<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>EclipseSource Blog &#187; new and noteworthy</title>
	<atom:link href="http://eclipsesource.com/blogs/tag/new-and-noteworthy/feed/" rel="self" type="application/rss+xml" />
	<link>http://eclipsesource.com/blogs</link>
	<description>Eclipse Equinox OSGi</description>
	<lastBuildDate>Fri, 18 May 2012 15:00:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>M6 brings markup text support to RAP</title>
		<link>http://eclipsesource.com/blogs/2012/03/23/m6-brings-markup-text-support-to-rap/</link>
		<comments>http://eclipsesource.com/blogs/2012/03/23/m6-brings-markup-text-support-to-rap/#comments</comments>
		<pubDate>Fri, 23 Mar 2012 11:47:46 +0000</pubDate>
		<dc:creator>Ralf Sternberg</dc:creator>
				<category><![CDATA[news]]></category>
		<category><![CDATA[syndicate]]></category>
		<category><![CDATA[juno]]></category>
		<category><![CDATA[milestone]]></category>
		<category><![CDATA[new and noteworthy]]></category>
		<category><![CDATA[rap]]></category>

		<guid isPermaLink="false">http://eclipsesource.com/blogs/?p=7337</guid>
		<description><![CDATA[The RAP 1.5 M6 milestone build is packed with new features, especially for Trees and Tables. But most notably, you can now use HTML markup in Tables, Trees, and also in Labels: Just enable the markup support for a certain widget (see below), then you can make its text bold, italic, yellow or … no, [...]]]></description>
			<content:encoded><![CDATA[<p>The RAP 1.5 M6 milestone build is packed with new features, especially for Trees and Tables. But most notably, you can now use HTML markup in Tables, Trees, and also in Labels:</p>
<p><a href="http://eclipsesource.com/blogs/wp-content/uploads/2012/03/MarkupInTable.png"><img src="http://eclipsesource.com/blogs/wp-content/uploads/2012/03/MarkupInTable.png" alt="MarkupInTable M6 brings markup text support to RAP" title="Markup in a RAP Table" width="510" height="196" class="aligncenter size-full wp-image-7351" /></a></p>
<p>Just enable the markup support for a certain widget (see below), then you can make its text <strong>bold</strong>, <em>italic</em>, <span style="background:gold">yellow</span> or … no, not blinking! Actually, RAP will validate the markup and allows only a selection of tags (no <code>&lt;script&gt;</code> tags, please!). But since the <code>&lt;img&gt;</code> tag is in that list, you can add a smiley instead <img src='http://eclipsesource.com/blogs/wp-includes/images/smilies/icon_wink.gif' alt="icon wink M6 brings markup text support to RAP" class='wp-smiley' title="M6 brings markup text support to RAP" /> .</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;">Table table <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Table<span style="color: #009900;">&#40;</span> parent, SWT.<span style="color: #006633;">BORDER</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
table.<span style="color: #006633;">setData</span><span style="color: #009900;">&#40;</span> RWT.<span style="color: #006633;">MARKUP_ENABLED</span>, <span style="color: #003399;">Boolean</span>.<span style="color: #000066; font-weight: bold;">TRUE</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
TableItem item <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> TableItem<span style="color: #009900;">&#40;</span> table, SWT.<span style="color: #006633;">NONE</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
item.<span style="color: #006633;">setText</span><span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">&quot;Some &lt;em&gt;text&lt;/em&gt; with &lt;strong&gt;markup&lt;strong&gt;&quot;</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>This also means that you don&#8217;t have to break your neck anymore just to add an HTML link to your RAP UI. You can now place real links in any Label or CLabel:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #003399;">Label</span> label <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">Label</span><span style="color: #009900;">&#40;</span> parent, SWT.<span style="color: #006633;">NONE</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
label.<span style="color: #006633;">setData</span><span style="color: #009900;">&#40;</span> RWT.<span style="color: #006633;">MARKUP_ENABLED</span>, <span style="color: #003399;">Boolean</span>.<span style="color: #000066; font-weight: bold;">TRUE</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
label.<span style="color: #006633;">setText</span><span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">&quot;&lt;a href=<span style="color: #000099; font-weight: bold;">\&quot;</span>http://eclipse.org/rap<span style="color: #000099; font-weight: bold;">\&quot;</span> target=<span style="color: #000099; font-weight: bold;">\&quot;</span>_blank<span style="color: #000099; font-weight: bold;">\&quot;</span>&gt;RAP project page&lt;a&gt;&quot;</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Don&#8217;t like the <code>setData()</code> programming? We don&#8217;t like it either. But for now, it&#8217;s the simplest way to expose additional functionality without changing the SWT API. For RAP 2.0, we plan to come up with some better API for our extensions.</p>
<p>Try out the markup support in our updated <a href="http://rap.eclipsesource.com/rapdemo/examples#rich-label">online demo</a>! BTW, did you notice that this is a deep link into the demo application? Yes, there was a <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=294709">bug</a> preventing them from working in RAP for long, and it&#8217;s now finally fixed! You can now use the BrowserHistory to navigate to a certain point in your application right on startup. Here&#8217;s the link to an example page that shows <a href="http://rap.eclipsesource.com/rapdemo/examples#table-markup">markup in a Table</a>.</p>
<p>And there are more Table and Tree enhancements, such as the <em>fixed columns</em> support that lets you exclude one or more colums from horizontal scrolling. Check out the full list of changes in the <a href="http://eclipse.org/rap/noteworthy/1.5/news_M6.php">New &amp; Noteworthy</a>. <a href="http://eclipse.org/rap/downloads/"></p>
<p>Get it</a> while it&#8217;s hot, this milestone is a must have <img src='http://eclipsesource.com/blogs/wp-includes/images/smilies/icon_wink.gif' alt="icon wink M6 brings markup text support to RAP" class='wp-smiley' title="M6 brings markup text support to RAP" /> </p>
]]></content:encoded>
			<wfw:commentRss>http://eclipsesource.com/blogs/2012/03/23/m6-brings-markup-text-support-to-rap/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>RAP Mobile for Android 0.5.3 &#8211; New and Noteworthy</title>
		<link>http://eclipsesource.com/blogs/2012/02/27/rap-mobile-for-android-0-5-3-new-and-noteworthy/</link>
		<comments>http://eclipsesource.com/blogs/2012/02/27/rap-mobile-for-android-0-5-3-new-and-noteworthy/#comments</comments>
		<pubDate>Mon, 27 Feb 2012 16:16:33 +0000</pubDate>
		<dc:creator>Moritz Post</dc:creator>
				<category><![CDATA[news]]></category>
		<category><![CDATA[syndicate]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[new and noteworthy]]></category>
		<category><![CDATA[rap]]></category>
		<category><![CDATA[rap mobile]]></category>

		<guid isPermaLink="false">http://eclipsesource.com/blogs/?p=7086</guid>
		<description><![CDATA[The latest Android client for RAP mobile (v0.5.3) is now available. We are always looking for feedback so we urge you to take part in our developer preview program to experience the client firsthand. Besides the usual bugfixes, performance and stability improvements, the 0.5.3 release brings some often requested features to an Android handset near you. For [...]]]></description>
			<content:encoded><![CDATA[<p>The latest Android client for RAP mobile (v0.5.3) is now available. We are always looking for feedback so we urge you to <a href="http://rapmobile.eclipsesource.com/developers/">take part</a> in our developer preview program to experience the client firsthand.</p>
<p>Besides the usual bugfixes, performance and stability improvements, the 0.5.3 release brings some often requested features to an Android handset near you.</p>
<p>For more information visit: <a href="http://rapmobile.eclipsesource.com/">http://rapmobile.eclipsesource.com</a></p>
<p><a href="http://eclipsesource.com/blogs/wp-content/uploads/2012/02/virtual-tree.png"><img class="size-medium wp-image-7103 alignright" style="border-style: initial; border-color: initial;" title="Virtual Tree" src="http://eclipsesource.com/blogs/wp-content/uploads/2012/02/virtual-tree-202x300.png" alt="virtual tree 202x300 RAP Mobile for Android 0.5.3   New and Noteworthy" width="124" height="182" /></a></p>
<h3>The Tree widget supports the SWT.VIRTUAL style flag</h3>
<p>The support of the SWT.VIRTUAL style flag allows you to easily scroll through huge amounts of data. While you are scrolling through tree content, the data to be displayed is automatically loaded on demand in the background. Intelligent pre-caching makes it possible to have content visible even when scrolling very quickly. If the complete data cannot be delivered quickly enough, you are still able to scroll through the available content while the data is fetched in the background.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><img class="alignleft size-medium wp-image-7112" style="border-style: initial; border-color: initial;" title="buttons" src="http://eclipsesource.com/blogs/wp-content/uploads/2012/02/buttons-252x300.png" alt="buttons 252x300 RAP Mobile for Android 0.5.3   New and Noteworthy" width="153" height="182" /></p>
<h3>Buttons can be colorized programmatically</h3>
<p>We refined the support for background colors on buttons. You can now call <code>button.setBackground(redColor)</code> to change the background color of the button. The change in color applies not only to the default state but to all button states such as pressed, disabled, focused etc.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<h3>Opening and closing shells is animated</h3>
<p>In the Android client we map an SWT shell to behave similarly to an Android activity. Multiple activities can be stacked on top of each other and the user is able to switch between them with the back button on the device. The creation and destruction of an activity is animated according to the current device. We play these very same animations on shells when they are created or closed. On a Samsung Galaxy S2 (Android 2.3.x) a fly-in animation is performed whereas on a Samsung Galaxy Nexus (Android 4.0.x) a fade/scale animation is applied.</p>
<h3>Text widget tooltip is displayed in text field</h3>
<p><a href="http://eclipsesource.com/blogs/wp-content/uploads/2012/02/image03.png"><img class="alignright size-medium wp-image-7117" title="image03" src="http://eclipsesource.com/blogs/wp-content/uploads/2012/02/image03-300x101.png" alt="image03 300x101 RAP Mobile for Android 0.5.3   New and Noteworthy" width="182" height="62" /></a><br />
If a tooltip is set on a Text widget we now display the tip inside the Android EditText. You can use this to add hints for completing fields.</p>
<h3>Font probing on startup is implemented</h3>
<p>When starting a new RAP session we measure the probe strings sent from the server. These probe strings allow the server to categorize the clients according to their text sizes. The server can use cached string sizes so that it doesn’t have to request that the client re-measure strings cached in a previous session.</p>
<h3>UI updates are accumulated to execute in one operation</h3>
<p>When a server response triggers UI changes, we now gather all these changes and execute them altogether. Previously, we applied the UI changes on the fly which resulted in incremental changes to the UI. The new approach creates a more native-like experience as the UI changes state in one operation.</p>
<h3><a name="h.sqop3tz8ndf6"></a>Client sends a customized HTTP User-Agent string</h3>
<p>The RAP mobile Android client sends a customized User-Agent string. It contains the Android version, information about the device and the RAPmobile client version. Example: <code>Android/4.0.2,14 (samsung; Galaxy Nexus) RAPmobile/0.5.3</code></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://eclipsesource.com/blogs/2012/02/27/rap-mobile-for-android-0-5-3-new-and-noteworthy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eclipse Indigo SR2: Released in time</title>
		<link>http://eclipsesource.com/blogs/2012/02/24/eclipse-indigo-sr2-released-in-time/</link>
		<comments>http://eclipsesource.com/blogs/2012/02/24/eclipse-indigo-sr2-released-in-time/#comments</comments>
		<pubDate>Fri, 24 Feb 2012 16:40:45 +0000</pubDate>
		<dc:creator>Markus Knauer</dc:creator>
				<category><![CDATA[eclipse]]></category>
		<category><![CDATA[syndicate]]></category>
		<category><![CDATA[epp]]></category>
		<category><![CDATA[indigo]]></category>
		<category><![CDATA[new and noteworthy]]></category>
		<category><![CDATA[release]]></category>

		<guid isPermaLink="false">http://eclipsesource.com/blogs/?p=7064</guid>
		<description><![CDATA[Sure, you&#8217;ve been reloading the eclipse.org/downloads web page once every minute over the past hours, you&#8217;ve been clicking on &#8216;Help&#8217; &#62; &#8216;Check for Updates&#8217; in your Indigo Eclipse package, you&#8217;ve been monitoring the cross-project-issues-dev mailing list. Okay, then I cannot tell you any news, but the participating projects at Eclipse shipped another coordinated Simultaneous Release [...]]]></description>
			<content:encoded><![CDATA[<p>Sure, you&#8217;ve been reloading the <a href="http://eclipse.org/downloads/" target="_blank">eclipse.org/downloads</a> web page once every minute over the past hours, you&#8217;ve been clicking on &#8216;Help&#8217; &gt; &#8216;Check for Updates&#8217; in your Indigo Eclipse package, you&#8217;ve been monitoring the <a href="http://dev.eclipse.org/mhonarc/lists/cross-project-issues-dev/msg07343.html">cross-project-issues-dev</a> mailing list.</p>
<p>Okay, <em>then</em> I cannot tell you any news, but the participating projects at Eclipse shipped another coordinated Simultaneous Release in time! This Indigo SR2 release contains many improvements and bug fixes, e.g. an update of the underlying platform to 3.7.2. It&#8217;s worth an update!</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://eclipsesource.com/blogs/2012/02/24/eclipse-indigo-sr2-released-in-time/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eclipse Juno M4: RAP speaks JSON</title>
		<link>http://eclipsesource.com/blogs/2011/12/16/eclipse-juno-m4-rap-speaks-json/</link>
		<comments>http://eclipsesource.com/blogs/2011/12/16/eclipse-juno-m4-rap-speaks-json/#comments</comments>
		<pubDate>Fri, 16 Dec 2011 16:32:19 +0000</pubDate>
		<dc:creator>Ralf Sternberg</dc:creator>
				<category><![CDATA[eclipse]]></category>
		<category><![CDATA[news]]></category>
		<category><![CDATA[syndicate]]></category>
		<category><![CDATA[juno]]></category>
		<category><![CDATA[new and noteworthy]]></category>
		<category><![CDATA[protocol]]></category>
		<category><![CDATA[rap]]></category>

		<guid isPermaLink="false">http://eclipsesource.com/blogs/?p=6825</guid>
		<description><![CDATA[In the RAP framework, the widgets in a website are remotely controlled by the web server. The server does this by sending messages to the client in response to Ajax requests. Until now, those messages used to contain proprietary JavaScript that has been evaluated by the browser. Apart from the drawbacks of using eval to [...]]]></description>
			<content:encoded><![CDATA[<p>In the <a href="http://eclipse.org/rap">RAP</a> framework, the widgets in a website are remotely controlled by the web server. The server does this by sending messages to the client in response to Ajax requests. Until now, those messages used to contain proprietary JavaScript that has been evaluated by the browser. Apart from the drawbacks of using <em>eval</em> to process server responses, this tightly couples RAP to its default browser client. The messages were so specific that only this client could understand them.</p>
<p>One of our goals for RAP 1.5 is to open the framework for alternative client implementations. After all, the messages from the server contain precise rendering commands that are not at all specific to JavaScript. Commands like &#8220;create a button with text &#8216;<code>Ok</code>&#8216;, set its size to <code>190x25px</code>, and place it at pos <code>(23,42)</code>&#8221; or &#8220;change the text color of the label with id &#8216;<code>w47</code>&#8216; to &#8216;<code>#ff0000</code>&#8216;&#8221; can be rendered by any client that is able to create and manipulate widgets. It doesn&#8217;t have to be a JavaScript client, also clients written in other languages like Java or Objective C can implement it. Clients can render widgets with any UI technology, be it SVG or even a mobile device&#8217;s native widget set.</p>
<p>To allow for those cases, we exchanged the communication format with a simple <a href="http://wiki.eclipse.org/RAP/Protocol">predefined format</a> based on <a href="http://json.org/">JSON</a>. With the <a href="http://eclipse.org/rap/noteworthy/1.5/news_M4.php">M4 build published today</a>, all responses from a RAP server are now plain JSON. This also makes the debugging much easier, since developer tools like <a href="http://getfirebug.com">Firebug</a> display the structure of a message.</p>
<p><a href="http://eclipsesource.com/blogs/wp-content/uploads/2011/12/RAP-Firebug-JSON.png"><img class="aligncenter size-full wp-image-6828" title="RAP Session in Firebug (JSON)" src="http://eclipsesource.com/blogs/wp-content/uploads/2011/12/RAP-Firebug-JSON.png" alt="RAP Firebug JSON Eclipse Juno M4: RAP speaks JSON" width="600" height="301" /></a></p>
<p>When <a href="http://eclipsesource.com/blogs/tag/protocol/">designing the protocol</a>, we took great care not to limit the exchange format to widgets. Instead, we created a generic synchronization protocol for any kind of objects. Objects are identified with a unique id, and every operation is related to a target object that is referenced by its unique id. There are different types of operations: one to create an object, one to destroy it, one to change some properties on an object, etc. Every message from the server contains a list of operations, besides some meta information.</p>
<p>You&#8217;ve guessed that we already have some prototypes for alternative RAP clients in progress. We&#8217;ll write about them soon&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://eclipsesource.com/blogs/2011/12/16/eclipse-juno-m4-rap-speaks-json/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Lightweight OSGi Applications using RAP&#8217;s Widget Toolkit</title>
		<link>http://eclipsesource.com/blogs/2011/08/29/lightweight-osgi-applications-using-raps-widget-toolkit/</link>
		<comments>http://eclipsesource.com/blogs/2011/08/29/lightweight-osgi-applications-using-raps-widget-toolkit/#comments</comments>
		<pubDate>Mon, 29 Aug 2011 20:04:06 +0000</pubDate>
		<dc:creator>Ralf Sternberg</dc:creator>
				<category><![CDATA[eclipse]]></category>
		<category><![CDATA[OSGi]]></category>
		<category><![CDATA[syndicate]]></category>
		<category><![CDATA[milestone]]></category>
		<category><![CDATA[new and noteworthy]]></category>
		<category><![CDATA[rap]]></category>

		<guid isPermaLink="false">http://eclipsesource.com/blogs/?p=6394</guid>
		<description><![CDATA[Update 2: The new interfaces have been renamed again in RAP 1.5M7. Please refer to this post for the details and check out the updated code example. Update: APIs have changed a bit meanwhile, so I updated the code below accordingly. Entry points are now registered by path, and JEE_COMPLATIBILTIY has become the default mode, [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Update 2:</strong> The new interfaces have been renamed again in RAP 1.5M7. Please refer to <a href="http://eclipsesource.com/blogs/2012/05/09/the-new-application-api-in-rap/">this post</a> for the details and check out the updated <a href="https://github.com/ralfstx/rap-helpers/tree/master/example.rwt.simple">code example</a>.</p>
<p><strong>Update:</strong> APIs have changed a bit meanwhile, so I updated the code below accordingly. Entry points are now registered by path, and JEE_COMPLATIBILTIY has become the default mode, which makes the main loop obsolete in this kind of applications.</p>
<p>RAP is well known as an &#8220;RCP for the web browser&#8221;, including workbench, extension points, and all that stuff. Indeed, one of the greatest features of RAP is its ability to reuse RCP code in web applications. But did you know that you can also use RAP&#8217;s widget toolkit (RWT) to create simple web UIs for your applications, without the heavy weight Eclipse UI stack?</p>
<p>With RAP 1.5, you can now simply include RWT in any OSGi application. You only need two bundles: <code>org.eclipse.rap.rwt</code> (the RAP widget toolkit itself) and <code>org.eclipse.rap.rwt.osgi</code> which integrates RWT with the OSGi HTTP service. There are no tie-ins with Equinox anymore, thus RAP also works with other OSGi containers.</p>
<p>To create a UI with RWT, you have to implement the interface <code>IEntryPoint</code>, here&#8217;s a simple example:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;">  <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">int</span> createUI<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #666666; font-style: italic;">// Create a maximized top-level shell without trimmings that represents the main &quot;page&quot;</span>
    Display display <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Display<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    Shell page <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Shell<span style="color: #009900;">&#40;</span> display, SWT.<span style="color: #006633;">NO_TRIM</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    page.<span style="color: #006633;">setMaximized</span><span style="color: #009900;">&#40;</span> <span style="color: #000066; font-weight: bold;">true</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    page.<span style="color: #006633;">setLayout</span><span style="color: #009900;">&#40;</span> <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">GridLayout</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #666666; font-style: italic;">// Create contents of main shell</span>
    <span style="color: #003399;">Label</span> label <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">Label</span><span style="color: #009900;">&#40;</span> page, SWT.<span style="color: #006633;">NONE</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    label.<span style="color: #006633;">setText</span><span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">&quot;Hello&quot;</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #003399;">Button</span> button <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">Button</span><span style="color: #009900;">&#40;</span> page, SWT.<span style="color: #006633;">PUSH</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    button.<span style="color: #006633;">setText</span><span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">&quot;World&quot;</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #666666; font-style: italic;">// Open the top-level shell and run the main loop to process events</span>
    page.<span style="color: #006633;">layout</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    page.<span style="color: #006633;">open</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">return</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span></pre></div></div>

<p>Now what&#8217;s new is that, instead of registering this entry point with an extension point, you can now implement the new <code>ApplicationConfigurator</code> interface like this:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;">  <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> configure<span style="color: #009900;">&#40;</span> <span style="color: #003399;">Context</span> context <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    context.<span style="color: #006633;">addEntryPoint</span><span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">&quot;/simple&quot;</span>, SimpleEntryPoint.<span style="color: #000000; font-weight: bold;">class</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    context.<span style="color: #006633;">addBranding</span><span style="color: #009900;">&#40;</span> <span style="color: #000000; font-weight: bold;">new</span> AbstractBranding<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
      @Override
      <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #003399;">String</span> getServletName<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #000000; font-weight: bold;">return</span> <span style="color: #0000ff;">&quot;simple&quot;</span><span style="color: #339933;">;</span>
      <span style="color: #009900;">&#125;</span>
      @Override
      <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #003399;">String</span> getTitle<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #000000; font-weight: bold;">return</span> <span style="color: #0000ff;">&quot;Simple RWT Example&quot;</span><span style="color: #339933;">;</span>
      <span style="color: #009900;">&#125;</span>
    <span style="color: #009900;">&#125;</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span></pre></div></div>

<p>When this implementation is registered as an OSGi service, you can access the UI with a web browser:<br />
<a href="http://eclipsesource.com/blogs/wp-content/uploads/2011/08/RWTSimple.png"><br />
<img src="http://eclipsesource.com/blogs/wp-content/uploads/2011/08/RWTSimple.png" alt="RWTSimple Lightweight OSGi Applications using RAPs Widget Toolkit" title="RWT Simple Example" width="550" height="251" class="aligncenter size-full wp-image-6399" /></a><br />
You can check out the example project <code>example.rwt.simple</code> from my <a href="https://github.com/ralfstx/rap-helpers">rap-helpers repository on github</a>. Please note that for this example to run you need declarative services in your target platform, which are not included in the RAP 1.5M1 target but in the latest nightly build. Also be aware that the new API is still provisional and may change again until the final release.</p>
<p>Kudos to Frank Appel, who contributed the new OSGi integration. He has a more detailed introduction to the new OSGi integration and examples for configuration in <a href="http://www.codeaffine.com/2011/08/26/raprwt-osgi-integration/">his blog</a>. BTW, Frank and me plan to demo the possibilities of this approach in our talk <a href="http://www.eclipsecon.org/sessions/dynamic-web-applications-osgi-and-rap">Dynamic web applications with OSGi and RAP</a> at the EclipseCon Europe &#8211; vote for it if you&#8217;re interested!</p>
]]></content:encoded>
			<wfw:commentRss>http://eclipsesource.com/blogs/2011/08/29/lightweight-osgi-applications-using-raps-widget-toolkit/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Accessing a huge data set with the web browser</title>
		<link>http://eclipsesource.com/blogs/2011/08/15/accessing-a-huge-data-set-with-the-web-browser/</link>
		<comments>http://eclipsesource.com/blogs/2011/08/15/accessing-a-huge-data-set-with-the-web-browser/#comments</comments>
		<pubDate>Mon, 15 Aug 2011 07:19:52 +0000</pubDate>
		<dc:creator>Ralf Sternberg</dc:creator>
				<category><![CDATA[eclipse]]></category>
		<category><![CDATA[news]]></category>
		<category><![CDATA[syndicate]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[new and noteworthy]]></category>
		<category><![CDATA[rap]]></category>

		<guid isPermaLink="false">http://eclipsesource.com/blogs/?p=6351</guid>
		<description><![CDATA[The Enron Corporation was the American energy company that was involved in accounting fraud which led to the Enron scandal in 2001. During the investigation, large parts of the company&#8217;s email conversations were published. The result is that a huge, real-life data set including more than half a million emails from 150 Enron executives came [...]]]></description>
			<content:encoded><![CDATA[<p>The Enron Corporation was the American energy company that was involved in accounting fraud which led to the <a href="http://en.wikipedia.org/wiki/Enron_scandal">Enron scandal</a> in 2001. During the investigation, large parts of the company&#8217;s email conversations <a href="http://www.salon.com/news/feature/2003/10/14/enron/index.html">were published</a>. The result is that a <a href="http://www.cs.cmu.edu/~enron/">huge, real-life data set</a> including more than half a million emails from 150 Enron executives came into the public domain.</p>
<p>I thought that this data would be a good example to show the ability of the new Tree widget in RAP to display huge datasets.</p>
<p><a href="http://eclipsesource.com/blogs/wp-content/uploads/2011/08/Screenshot.png"><img class="aligncenter size-full wp-image-6354" title="A lazy TreeViewer in RAP" src="http://eclipsesource.com/blogs/wp-content/uploads/2011/08/Screenshot.png" alt="Screenshot Accessing a huge data set with the web browser" width="555" height="342" /></a></p>
<p>It&#8217;s clear that you cannot create half a million UI elements in a browser without running out of memory. Neither can you load the entire dataset (&gt; 2GB on disk) into memory on the server. You need a mechanism to load and display data on demand.</p>
<p>As of this week, the <strong>RWT Tree widget has full SWT.VIRTUAL support</strong>, i.e. it is capable of creating Tree items only at the moment they become visible. This feature is used by the JFace TreeViewer to request data from a lazy content provider on demand.</p>
<p>So, in order to make a complex data set accessible with a web UI, you just need to write an ILazyTreeContentProvider implementation. That&#8217;s about one screen of Java code, mostly copied from a <a href="http://wiki.eclipse.org/index.php/JFaceSnippets#Snippet047VirtualLazyTreeViewer">JFace snippet</a>. That&#8217;s all.</p>
<p>Check out the example on our <a href="http://rap.eclipsesource.com">online demo</a> (navigate to the tab called <em>Complex Data</em>). The source code of this demo page is available on <a href="https://github.com/ralfstx/rap-demo-additions">github</a>.</p>
<p>Full SWT.VIRTUAL support for the Tree widget is available in <a href="http://eclipse.org/rap/source/">CVS</a> and will be part of RAP 1.5M1.</p>
]]></content:encoded>
			<wfw:commentRss>http://eclipsesource.com/blogs/2011/08/15/accessing-a-huge-data-set-with-the-web-browser/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Uploading files with RAP 1.4</title>
		<link>http://eclipsesource.com/blogs/2011/06/23/uploading-files-with-rap-14/</link>
		<comments>http://eclipsesource.com/blogs/2011/06/23/uploading-files-with-rap-14/#comments</comments>
		<pubDate>Thu, 23 Jun 2011 10:19:34 +0000</pubDate>
		<dc:creator>Ralf Sternberg</dc:creator>
				<category><![CDATA[news]]></category>
		<category><![CDATA[syndicate]]></category>
		<category><![CDATA[indigo]]></category>
		<category><![CDATA[new and noteworthy]]></category>
		<category><![CDATA[rap]]></category>
		<category><![CDATA[Single Sourcing]]></category>

		<guid isPermaLink="false">http://eclipsesource.com/blogs/?p=6147</guid>
		<description><![CDATA[One of the new things in RAP 1.4 is the FileUpload widget in RWT, that replaces the old Upload widget from the sandbox. And there&#8217;s some more new upload stuff in the RAP Incubator. Here&#8217;s how to use the new features to upload files with RAP 1.4. The FileUpload is a new widget that wraps [...]]]></description>
			<content:encoded><![CDATA[<p>One of the new things in RAP 1.4 is the <em>FileUpload</em> widget in RWT, that replaces the old <em>Upload</em> widget from the sandbox. And there&#8217;s some more new upload stuff in the RAP Incubator. Here&#8217;s how to use the new features to upload files with RAP 1.4.</p>
<p>The FileUpload is a new widget that wraps the HTML file selection &lt;input&gt; tag. It looks like a button, and when it&#8217;s pressed, a native file dialog opens up that lets users select a file from their local file system. On file selection, a SelectionEvent will be fired. You can then programmatically upload the selected file to an http server using FileUpload.submit( URL ).</p>
<p><a href="http://eclipsesource.com/blogs/wp-content/uploads/2011/06/FileUpload.png"><img class="aligncenter size-full wp-image-6203" title="FileUpload widget" src="http://eclipsesource.com/blogs/wp-content/uploads/2011/06/FileUpload.png" alt="FileUpload Uploading files with RAP 1.4" width="90" height="33" /></a></p>
<p>In order to receive and store the uploaded files on the server, you also need a server-side component. We created such an upload server component in the RAP Incubator. It&#8217;s called FileUploadHandler and it uses the Apache fileupload component internally. It&#8217;s included in the bundle org.eclipse.rap.rwt.supplemental.fileupload. This handler accepts file uploads to a certain URL (FileUploadHandler.getUploadUrl()) and delegates the data to a FileUploadReceiver. You can either use the provided DiskFileUploadReceiver or create your own receiver to do whatever you like with the uploaded data: put it into a database, or simple analyze the data and discard it.</p>
<p>Sounds complicated? Well, there&#8217;s a <strong>much easier way</strong> to upload files with RAP 1.4! We&#8217;ve encapsulated the entire upload process in an implementation of the SWT FileDialog, which is also available in the incubator.</p>
<p style="text-align: center;"><a href="http://eclipsesource.com/blogs/wp-content/uploads/2011/06/FileDialog1.png"><img class="aligncenter size-full wp-image-6210" title="FileDialog" src="http://eclipsesource.com/blogs/wp-content/uploads/2011/06/FileDialog1.png" alt="FileDialog1 Uploading files with RAP 1.4" width="460" height="240" /></a></p>
<p>To make it easy to use, we now provide an update site for the Incubator. To use the FileDialog in your application, all you have to do is to:</p>
<ol>
<li>include the bundles from the RAP Incubator repository http://download.eclipse.org/rt/rap/1.4/incubator/ in your RAP 1.4 target platform, and</li>
<li>add a bundle dependency to org.eclipse.rap.rwt.supplemental.filedialog to your project (yes, you have to use Require-Bundle here because this bundle contributes a class to the org.eclipse.swt.widgets package, effectively creating a <em>split-package</em>).</li>
</ol>
<p>That&#8217;s all. Now you can use the FileDialog just like in SWT:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;">  <span style="color: #003399;">FileDialog</span> fileDialog <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">FileDialog</span><span style="color: #009900;">&#40;</span> shell, SWT.<span style="color: #006633;">TITLE</span> <span style="color: #339933;">|</span> SWT.<span style="color: #006633;">MULTI</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  fileDialog.<span style="color: #006633;">setText</span><span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">&quot;Upload Files&quot;</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;?</span>
  fileDialog.<span style="color: #006633;">setAutoUpload</span><span style="color: #009900;">&#40;</span> <span style="color: #000066; font-weight: bold;">true</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// This API will change, see below!</span>
  fileDialog.<span style="color: #006633;">open</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #003399;">String</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> fileNames <span style="color: #339933;">=</span> fileDialog.<span style="color: #006633;">getFileNames</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>After uploading, the dialog closes and the variable fileNames contains the absolute file names of the uploaded files on the server&#8217;s file system. There&#8217;s an auto-upload feature that is really nice (I think it should be the default) &#8211; with autoUpload on, the upload starts immediately after file selection. A user can still press Cancel to prevent the application from using the uploaded files.</p>
<p><strong>Note:</strong> Please note that this stuff is in the incubator and not part of the 1.4 release. The API and implementation may (and will) have to change and mature over time. However, if you use the latest version from 1.4/incubator site, you&#8217;ll always get a file dialog that will work with RAP 1.4. The server-side upload receiver and the required Apache bundles are also included.</p>
<p>We hope you enjoy these new features. Please try them out, tell us what you think, open bugs for the new stuff, and help us improving them.</p>
<p>Kudos to our new RAP committers Austin Riddle and Cole Markham who created this great new feature!</p>
<p><strong>Update:</strong> I mistakenly left out the &#8220;.rwt.&#8221; from the bundle namespace in the original post, the bundle names are fixed now in the text.</p>
<p><strong>Update:</strong> The 1.4 incubator repository has been updated with a newer version of the file dialog that is compatible with RAP 1.4. This update fixes the problem with missing file names mentioned in the comments.</p>
]]></content:encoded>
			<wfw:commentRss>http://eclipsesource.com/blogs/2011/06/23/uploading-files-with-rap-14/feed/</wfw:commentRss>
		<slash:comments>47</slash:comments>
		</item>
		<item>
		<title>RAP 1.4 M1 is out</title>
		<link>http://eclipsesource.com/blogs/2010/08/20/rap-1-4-m1-is-out/</link>
		<comments>http://eclipsesource.com/blogs/2010/08/20/rap-1-4-m1-is-out/#comments</comments>
		<pubDate>Fri, 20 Aug 2010 14:48:23 +0000</pubDate>
		<dc:creator>Holger Staudacher</dc:creator>
				<category><![CDATA[eclipse]]></category>
		<category><![CDATA[syndicate]]></category>
		<category><![CDATA[indigo]]></category>
		<category><![CDATA[new and noteworthy]]></category>
		<category><![CDATA[rap]]></category>

		<guid isPermaLink="false">http://eclipsesource.com/blogs/?p=4626</guid>
		<description><![CDATA[After the Helios Release, we are one step closer to Indigo. RAP 1.4 M1 is now available. From the new features, here are my personal top three: We have a new implementation of the SWT Tree widget which is faster, more flexible, and provides many new features. In order to support new application servers that already ship [...]]]></description>
			<content:encoded><![CDATA[<p>After the <a href="http://wiki.eclipse.org/Helios">Helios</a> Release, we are one step closer to <a href="http://wiki.eclipse.org/Indigo">Indigo</a>. RAP 1.4 M1 is now available. From the <a href="http://eclipse.org/rap/noteworthy/1.4/news_M1.php" target="_blank">new features</a>, here are my personal top three:</p>
<ol>
<li>We have a new implementation of the SWT Tree widget which is faster, more flexible, and provides many new features.<br />
<a href="http://eclipsesource.com/blogs/wp-content/uploads/2010/08/tree.png"><img class="aligncenter size-full wp-image-4628" title="tree" src="http://eclipsesource.com/blogs/wp-content/uploads/2010/08/tree.png" alt="tree RAP 1.4 M1 is out" width="313" height="171" /></a></li>
<li>In order to support new application servers that already ship with Servlet API (javax.servlet.*) 3.0, RAP is now able to leverage the new Servlet specification. Deploying RAP on application servers like Tomcat 7 or Glassfish 3 is now possible.</li>
<li>Since RAP 1.3 you can easily use IApplications instead of IEntryPoints. With this milestone the RAP launcher supports choosing and launching IApplications.<br />
<a href="http://eclipsesource.com/blogs/wp-content/uploads/2010/08/applicationTooling.png"><img class="aligncenter size-full wp-image-4630" title="applicationTooling" src="http://eclipsesource.com/blogs/wp-content/uploads/2010/08/applicationTooling.png" alt="applicationTooling RAP 1.4 M1 is out" width="358" height="320" /></a></li>
</ol>
<ul>
<li>Check out the complete <a href="http://eclipse.org/rap/noteworthy/1.4/news_M1.php">New and Noteworthy</a> for M1.</li>
<li>Get RAP 1.4 M1 from the <a href="http://eclipse.org/rap/downloads/">RAP download site</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://eclipsesource.com/blogs/2010/08/20/rap-1-4-m1-is-out/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RAP 1.3 M7 is out</title>
		<link>http://eclipsesource.com/blogs/2010/05/08/rap-1-3-m7-is-out/</link>
		<comments>http://eclipsesource.com/blogs/2010/05/08/rap-1-3-m7-is-out/#comments</comments>
		<pubDate>Sat, 08 May 2010 10:42:56 +0000</pubDate>
		<dc:creator>Ralf Sternberg</dc:creator>
				<category><![CDATA[eclipse]]></category>
		<category><![CDATA[news]]></category>
		<category><![CDATA[syndicate]]></category>
		<category><![CDATA[helios]]></category>
		<category><![CDATA[new and noteworthy]]></category>
		<category><![CDATA[rap]]></category>

		<guid isPermaLink="false">http://eclipsesource.com/blogs/?p=4112</guid>
		<description><![CDATA[After another 6 weeks of working hard towards the Helios Release, we are one step closer. RAP 1.3 M7 for Eclipse 3.6 is out. From the new features, here are my personal top three: Eventually, a GraphicsContext implementation that lets you draw onto the browser using SWT API! In the early days of RAP, we regarded this [...]]]></description>
			<content:encoded><![CDATA[<p>After another 6 weeks of working hard towards the <a href="http://wiki.eclipse.org/Helios">Helios</a> Release, we are one step closer. RAP 1.3 M7 for Eclipse 3.6 is out. From the <a href="http://eclipse.org/rap/noteworthy/news_13M7.php" target="_blank">new features</a>, here are my personal top three:</p>
<ol>
<li>Eventually, a GraphicsContext implementation that lets you draw onto the browser using SWT API! In the early days of RAP, we regarded this as being impossible.<br />
<a href="http://eclipsesource.com/blogs/wp-content/uploads/2010/05/gc.png"><img class="aligncenter size-medium wp-image-4518" title="gc" src="http://eclipsesource.com/blogs/wp-content/uploads/2010/05/gc-300x188.png" alt="gc 300x188 RAP 1.3 M7 is out" width="300" height="188" /></a></li>
<li>Animations support in CSS enables cool effects like sliding menus, fading tooltips, and more.<br />
<a href="http://eclipsesource.com/blogs/wp-content/uploads/2010/05/SlidingMenues1.png"><img class="aligncenter size-full wp-image-4152" title="Sliding menues" src="http://eclipsesource.com/blogs/wp-content/uploads/2010/05/SlidingMenues1.png" alt="SlidingMenues1 RAP 1.3 M7 is out" width="250" height="91" /></a></li>
<li>Vertical-only grid lines make Tables with alternating row colors look much clearer. I had this feature on my todo list for almost one year.<br />
<a href="http://eclipsesource.com/blogs/wp-content/uploads/2010/05/VerticalGridlines2.png"></a><a href="http://eclipsesource.com/blogs/wp-content/uploads/2010/05/VerticalGridlines21.png"><img class="aligncenter size-full wp-image-4148" title="Vertical-only grid lines" src="http://eclipsesource.com/blogs/wp-content/uploads/2010/05/VerticalGridlines21.png" alt="VerticalGridlines21 RAP 1.3 M7 is out" width="280" height="181" /></a></li>
</ol>
<ul>
<li>Check out the complete <a href="http://eclipse.org/rap/noteworthy/news_13M7.php">New and Noteworthy</a> for M7.</li>
<li>Get RAP M7 from the <a href="http://eclipse.org/rap/downloads/">RAP download site</a> or</li>
<li>Get the M7 <a href="http://eclipse.org/downloads/packages/release/helios/m7">Eclipse for RCP/Plug-in Developers</a> package that includes everything you need to develop RCP and RAP applications.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://eclipsesource.com/blogs/2010/05/08/rap-1-3-m7-is-out/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>RAP now does animations</title>
		<link>http://eclipsesource.com/blogs/2010/05/04/rap-now-does-animations/</link>
		<comments>http://eclipsesource.com/blogs/2010/05/04/rap-now-does-animations/#comments</comments>
		<pubDate>Tue, 04 May 2010 17:15:17 +0000</pubDate>
		<dc:creator>Tim Buschtöns</dc:creator>
				<category><![CDATA[news]]></category>
		<category><![CDATA[syndicate]]></category>
		<category><![CDATA[new and noteworthy]]></category>
		<category><![CDATA[rap]]></category>
		<category><![CDATA[theming]]></category>

		<guid isPermaLink="false">http://eclipsesource.com/blogs/?p=4117</guid>
		<description><![CDATA[Animations are an integral part of most modern UIs, including many &#8220;web 2.0&#8243;-applications and websites. (Just watch carefully when opening google.com.) They have become so common that we even subconsciously miss them if they aren&#8217;t there. The transition between two states of an UI should never be sudden, but gradually (albeit quickly), as we are [...]]]></description>
			<content:encoded><![CDATA[<p>Animations are an integral part of most modern UIs, including many &#8220;web 2.0&#8243;-applications and websites. (Just watch carefully when opening <a href="http://www.google.com/">google.com</a>.) They have become so common that we even subconsciously miss them if they aren&#8217;t there. The transition between two states of an UI should never be sudden, but gradually (albeit quickly), as we are used from real life. If done right, this increases usability without attracting too much attention or slow down the user. Ideally one isn&#8217;t even aware of the effect, it only feels more organic and natural.</p>
<p>Therefore we now integrated the core functionality needed for such animations into RAP. Since the existing client-implementation of RAP was not written with such a feature in mind, it was considerable effort to do this without changing much of the existing code. And for the same reason, there are currently some limitations on what we can do with this feature. However the groundwork is done, and we hope to expand on that in the future.</p>
<p>Just like with gradients and rounded borders before, you can expect the number of supported widgets and effects to grow. You should keep in mind though, that this feature is meant only for subtle animations that seamlessly integrate into the UI. We can and will not turn RAP into some kind of multimedia powerhouse where everything is moving all the time.</p>
<p>For now, &#8220;Button&#8221;, &#8220;Menu&#8221;, &#8220;ToolTip&#8221; and &#8220;Shell-DisplayOverlay&#8221; each have one effect that can be enabled. This is done using RAPs CSS-theming, not Java, as this kind of animations are mainly eye-candy and don&#8217;t add any functionality. The syntax for this is based on a small and easy-to-use subset of the CSS3 <a href="http://www.w3.org/TR/css3-animations/">working draft for animations</a>. For example:</p>
<pre><code>
Button[PUSH] {
  animation: hoverIn 350ms ease, hoverOut 600ms ease-in;
}
</code></pre>
<p>This generates a faded hover-effect for buttons.</p>
<p>Animations work on all browser supported by RAP, but might not run smoothly on very old machines. They will be part of the upcoming <a href="http://www.eclipse.org/rap/noteworthy/news_13M7.php" target="_blank">1.3M7 build</a>. To see what we can do for now, check out the new &#8220;Theming&#8221;-Page in our <a href="http://rap.eclipsesource.com">examples-demo</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://eclipsesource.com/blogs/2010/05/04/rap-now-does-animations/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

