| <?xml version="1.0" encoding="iso-8859-1" ?> |
| <!-- |
| Copyright (c) 2009, 2013 EclipseSource and others. |
| All rights reserved. This program and the accompanying materials |
| are made available under the terms of the Eclipse Public License v1.0 |
| which accompanies this distribution, and is available at |
| http://www.eclipse.org/legal/epl-v10.html |
| --> |
| |
| <noteworthy version="1.3"> |
| <entry category="RWT" milestone="M1"> |
| <title> |
| CSS Gradients and Rounded Borders |
| </title> |
| <description> |
| <![CDATA[ |
| The RAP theming now supports gradients and rounded borders for many |
| widgets. |
| Both features are implemented using vector graphics (SVG/VML) on the |
| client-side. |
| Of course, this works with all browsers supported by RAP. |
| <br/> |
| <img src="images/GradientsAndRoundedBorders.png" |
| style="margin-top: 10px; margin-bottom: 10px" /> |
| <br /> |
| For gradients we followed the CSS syntax |
| <a href="http://webkit.org/blog/175/introducing-css-gradients/">implemented by Safari</a>, |
| as there is no official CSS syntax around. |
| Beside a start color and an end color, you can also define any |
| number of intermediate steps. |
| Currently, only vertical linear gradients are supported. |
| <pre> |
| background-image: gradient( |
| linear, left top, left bottom, |
| from( #ffffff ), |
| color-stop( 48%, #f0f0f0 ), |
| color-stop( 52%, #e0e0e0 ), |
| to( #cccccc ) |
| ); |
| </pre> |
| For rounded borders, we followed the approach outlined in the |
| <a href="http://www.w3.org/TR/css3-background/#the-border-radius">CSS Backgrounds and Borders Module</a>. |
| You can set rounded borders using the <code>border-radius</code> |
| property, even a different radius for every corner is possible. |
| <pre> |
| border: 2px solid #005092; |
| border-radius: 6px; |
| </pre> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="RWT"> |
| <title> |
| New API added |
| </title> |
| <description> |
| <![CDATA[ |
| A large set of missing SWT API has been added. |
| This will make it easier to reuse existing code or to utilize new |
| features. |
| This list is just a selection: |
| <ul> |
| <li> |
| <code> |
| <b>Widget:</b> |
| getListeners(int), |
| isListening(int), |
| reskin(int)</code> (and <code>SWT.Skin</code> event) |
| </li> |
| <li> |
| <code> |
| <b>Control:</b> |
| update(), |
| isReparentable(), |
| setParent() |
| </code> |
| </li> |
| <li> |
| <code> |
| <b>Composite:</b> |
| layout(Control[], int), |
| setLayoutDeferred(boolean) |
| </code> |
| </li> |
| <li> |
| <code> |
| <b>Device:</b> |
| getDPI(), |
| getFontList(String, boolean), |
| getDepth() |
| </code> |
| </li> |
| <li> |
| <code> |
| <b>Display:</b> |
| beep(), |
| close(), |
| disposeExec(), |
| getSystemCursor(int), |
| getCursorLocation(), |
| update(), |
| addListener(), |
| removeListener() |
| getAppName(), |
| setAppName(String), |
| getAppVersion(), |
| setAppVersion(String), |
| findDisplay(), |
| getSyncThread(), |
| getCursorControl(), |
| SWT.Close</code> and <code>SWT.Dispose</code> events |
| </li> |
| <li> |
| <code> |
| <b>SWT:</b> |
| getVersion(),</code> |
| style flags <code>TOOL, SHEET, CURSOR_NO, CURSOR_APPSTARTING, |
| SYSTEM_MODAL,</code> and <code>PRIMARY_MODAL,</code> |
| events <code>MenuDetect, Arm</code> and its typed counterparts |
| </li> |
| <li> |
| <code> |
| <b>Shell:</b> |
| </code> default constructor,<code> |
| setImages(Image[]), |
| getImages(), |
| getMinimumSize(), |
| setMinimumSize(int, int), |
| setMinimumSize(Point), |
| setFullScreen(boolean), |
| getFullScreen(), |
| setModified(boolean) |
| </code> |
| </li> |
| <li> |
| <code> |
| <b>Tree:</b> |
| select(TreeItem), |
| deselect(TreeItem), |
| getItemHeight(), |
| TreeItem#getTextBounds(int) |
| </code> |
| </li> |
| <li> |
| <code> |
| <b>Table:</b> |
| showColumn(TableColumn) |
| </code> |
| </li> |
| <li> |
| <code> |
| <b>List:</b> |
| getTopIndex(), |
| setTopIndex(), |
| showSelection(), |
| deselect(int), |
| deselect(int, int), |
| deselect(int[]) |
| </code> |
| </li> |
| <li> |
| <code> |
| <b>Text:</b> |
| getCaretPosition(), |
| getText(int, int), |
| setMessage(String), |
| getMessage(), |
| setEchoChar(char), |
| getEchoChar() |
| </code> |
| </li> |
| <li> |
| <code> |
| <b>Combo:</b> |
| getSelection(), |
| setTextLimit() |
| </code> |
| </li> |
| <li> |
| <code> |
| <b>Spinner:</b> |
| getText(), |
| getTextLimit(), |
| setTextLimit(int), |
| setDigits(int) |
| </code> |
| </li> |
| <li> |
| <code> |
| <b>ProgressBar:</b> |
| setState() |
| </code> |
| </li> |
| <li> |
| <code> |
| <b>ToolBar</b> |
| getItem(Point) |
| </code> |
| </li> |
| <li> |
| <code> |
| <b>TabFolder:</b> |
| getItem(Point), |
| TabItem#getBounds() |
| </code> |
| </li> |
| <li> |
| <code> |
| <b>CTabFolder:</b> |
| setSelectionBackground(Image), |
| setShowClose(boolean), |
| setUnselectedImageVisible(boolean), |
| setSelectionBackground(Color[],int[]) |
| </code> |
| </li> |
| <!--li> |
| <code> |
| <b>ScrolledComposite:</b> |
| showControl(Control), |
| setShowFocusedControl(boolean) and |
| getShowFocusedControl() |
| </code> |
| </li> |
| <li> |
| <code> |
| <b>CLabel:</b> |
| setMargins(int, int, int, int)</code> and related methods |
| </li> |
| <li> |
| <code> |
| <b>Image:</b> |
| getBackground(), |
| setBackground() |
| </code> |
| </li--> |
| <li> |
| and many more ... |
| </li> |
| </ul> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="RWT" milestone="M1"> |
| <title> |
| Help Events |
| </title> |
| <description> |
| <![CDATA[ |
| It is now possible to attach help listeners to controls and menus. |
| These events are generated when help is requested for a control or |
| menu, typically when the user presses F1. |
| ]]> |
| </description> |
| </entry> |
| <entry category="JFace / Workbench" milestone="M1"> |
| <title> |
| Cheatsheet support |
| </title> |
| <description> |
| <![CDATA[ |
| With the support of the FormText widget we now provide an |
| implementation of the cheatsheets plugin known from RCP. With this |
| it's possible to provide step-by-step cheatsheets with direct |
| integration of the application itself. |
| <br /> |
| <img src="images/cheatsheets.png" |
| style="margin-top: 10px; margin-bottom: 10px"/> |
| <br /> |
| See the |
| <a href="http://help.eclipse.org/galileo/topic/org.eclipse.platform.doc.isv/guide/ua_cheatsheet.htm">Eclipse help</a> |
| for more informations about cheatsheets and how to use them. |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="RWT" milestone="M2"> |
| <title> |
| Infrastructure for client-side unit tests |
| </title> |
| <description> |
| <![CDATA[ |
| The new Javascript-Testrunner enables developers to write client-side |
| tests for their custom-widgets using a JUnit-like syntax. The |
| TestRunner also includes tools to simulate client-server communication |
| and user-interactions. A simple test-case might look like this: |
| <pre> |
| qx.Class.define( "com.example.widgets.tests.CustomWidgetTest", { |
| extend : qx.core.Object, |
| members : { |
| testText : function() { |
| var widget = new com.example.widgets.CustomWidget(); |
| widget.setText( "Hello World!" ); |
| assertEquals( "Hello World!", widget.getText() ); |
| } |
| } |
| } ); |
| </pre> |
| <br /> |
| If any assert fails, the TestRunner will inform the developer via |
| its very simple UI and freeze Qooxdoo to ease debugging. |
| <br /> |
| The project is located in the <a href="/rap/source/">RAP Source Code |
| Repositry</a> |
| under <code>runtime.rwt.test/org.eclipse.rap.rwt.q07.jstest</code>. |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="RWT" milestone="M2"> |
| <title> |
| DateTime DROP_DOWN |
| </title> |
| <description> |
| <![CDATA[ |
| The DateTime widget now supports the <code>SWT.DROP_DOWN</code> style. |
| <pre> |
| DateTime dateTime = new DateTime( parent, SWT.DATE | SWT.DROP_DOWN ); |
| </pre> |
| <br /> |
| <img src="images/RAPDateTimeDropDown.png" |
| title="DateTime widget with DROP_DOWN style" |
| style="margin-top:10px; margin-bottom:10px" /> |
| <br /> |
| The appearance of the drop-down button can be changed with CSS in |
| the same way like in Combo. |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="RWT" milestone="M2"> |
| <title> |
| Compression Turned Off by Default |
| </title> |
| <description> |
| <![CDATA[ |
| Until now, responses sent by RAP were compressed using gzip. When |
| running on Tomcat, this could lead to character garbage being delivered |
| to the browser (see |
| <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=259977">bug |
| 259977</a>). |
| <br /> |
| Therefore we decided to turn off compression in RAP by default |
| (<a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=285669">bug |
| 285669</a>). |
| Beside the issue in Tomcat, compression is a task that should rather |
| be done by the servlet container to give administrators better control |
| over the setup. |
| <br /> |
| Compression can be turned on by specifying the VM argument |
| <code>org.eclipse.rwt.compression=true</code>. This is the default |
| setting for newly created launch configurations. |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="JFace / Workbench" milestone="M2"> |
| <title> |
| Layout Override Mechanism |
| </title> |
| <description> |
| <![CDATA[ |
| To customize an existing RAP design was not possible without touching |
| the providing bundle. Therefore we introduce a new mechanism to make it |
| much easier for adding or replacing own contributions to a design.<br/> |
| The mechanism makes it possible to replace existing LayoutSets. |
| Therefore LayoutSet elements from the |
| <code>org.eclipse.rap.ui.layouts</code> extension point got a new |
| optional attribute called overridesId. To override a single LayoutSet |
| a developer has to create a new extension of |
| <code>org.eclipse.rap.ui.layouts</code> and give it the same id as the |
| Layout which contains the LayoutSet to override. After this he just |
| has to declare a new LayoutSet element and set the overridesId to the |
| original one. <br/> |
| <img src="images/LayoutSetOverridding.png" alt="Overriding LayoutSets" |
| title="Screenshot taken from org.eclipse.rap.examples" |
| style="margin-top:10px" /> |
| <br/> |
| It's important to use the same identifiers for images, fonts, colors |
| and positions within the <code>ILayoutSetInitializer</code>. |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="JFace / Workbench" milestone="M2"> |
| <title> |
| Tooltips for TableViewer |
| </title> |
| <description> |
| <![CDATA[ |
| The <code>TableViewer</code> can now display tooltips for its content. |
| It can be activated by calling |
| <code>ColumnViewerToolTipSupport#enableFor()</code>. |
| Afterwards you need to override |
| <code>CellLabelProvider#getToolTipText(Object)</code> and have it |
| return the respective tooltip text. Other tooltip-related methods |
| (<code>getToolTipBackgroundColor</code>, etc.) are not supported. |
| <br /> |
| <img src="images/TableViewerToolTip.jpeg" |
| title="TableViewer showing a tooltip" |
| style="margin-top:10px" /> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="JFace / Workbench" milestone="M2"> |
| <title> |
| HelpSystem support |
| </title> |
| <description> |
| <![CDATA[ |
| With the support for the Eclipse Help infrastructure, you're now able |
| to integrate the well-known help system into your RAP applications. |
| <br /> |
| <img src="images/helpsystem.png" |
| title="HelpSystem in Action" |
| style="margin-top:10px; margin-bottom:10px" /> |
| <br /> |
| Currently RAP only provides the infrastructure to plug in a help |
| system implementation. Depending on your needs you can go ahead and |
| use a simple implementation as shown in our |
| <a href="http://wiki.eclipse.org/RAP/FAQ#How_to_integrate_the_Eclipse_Help_System_in_a_RAP_application.3F">FAQ</a>. |
| In case you are already using the cheatsheets plugin with links to the |
| help system, please be sure to include a help system implementation. |
| Otherwise your users will not be able to open the associated help |
| topics. |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="Look & Feel" milestone="M2"> |
| <title> |
| New Configuration Dialog |
| </title> |
| <description> |
| <![CDATA[ |
| To provide a more consistent design we replaced the configuration |
| dialog of the Business design with a more lightweight implementation. |
| Additionally we added an effect called |
| <a href="http://en.wikipedia.org/wiki/Lightbox_(JavaScript)">Lightbox</a> |
| which occurs when the dialog is open. To improve the usability of |
| the design we also have disabled the configuration button if a view |
| has no actions or viewmenu. |
| <img src="images/ConfigurationDialog.png" alt="ConfigurationDialog" |
| title="New RAP Business design configuration dialog" |
| style="margin-top:10px" /> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="Look & Feel" milestone="M2"> |
| <title> |
| Fancy design |
| </title> |
| <description> |
| <![CDATA[ |
| With <a href="../1.2/">RAP 1.2</a> we released a new look and |
| feel called business design. With this design we wanted to show |
| how RAP can look like in a serious sector. Now we introduce another |
| example called fancy design. This design shows that RAP is a |
| really modern technology and can look like one too.<br/> |
| To use this design a developer should follow the |
| <a href="http://eclipsesource.com/blogs/2009/06/02/yes-its-a-rap-application/"> |
| steps from the business design</a> and replace the servlet name with |
| "fancy". <br/> |
| <img src="images/fancyDesign.png" alt="RAP fancy design" |
| title="Screenshot taken from the RAP fancy design" |
| style="margin-top:10px" /> |
| <br/> |
| Please note that we changed a few IDs of some of the <code> |
| LayoutSets</code>. So, if you have replaced some LayoutSets please |
| update the <code>overridesId</code> attributes by removing the |
| word "business". |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="RWT" milestone="M3"> |
| <title> |
| Non-shared SWT Resources |
| </title> |
| <description> |
| <![CDATA[ |
| Constructors for the following resources were implemented |
| <ul> |
| <li><code>Cursor</code></li> |
| <li><code>Color</code></li> |
| <li><code>Font</code></li> |
| <li><code>Image</code></li> |
| </ul> |
| The factory methods (<code>Graphics#get*</code>) are still the |
| recommended way for dealing with resources in RWT. |
| If single-sourcing is desired and the extra memory is justifible, |
| using resource-constructors might be considered. |
| <br /> |
| With this change, also <code>dispose()</code> and |
| <code>isDisposed()</code> were introduced. |
| Even though these methods exist for all resources (shared and non-shared) |
| it is considered an error to disposed of factory-created (shared) |
| resources and an <code>IllegalStateException</code> is thrown in this |
| case. |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="RWT" milestone="M3"> |
| <title> |
| Browser History |
| </title> |
| <description> |
| <![CDATA[ |
| New API has been added to interact with the browser's history stack. |
| The <code>IBrowserHistory</code> implementation can be obtained via |
| <code>RWT.getBrowserHistory()</code>. |
| To create a new history entry, you can use its <code>createEntry()</code> |
| method. In order to receive notification of user-directed changes to the |
| current history entry, use <code>addBrowserHistoryListener()</code>. |
| <br/> |
| <img style="margin-top:10px; margin-bottom:10px" src="images/BrowserHistory.png" /> |
| <br /> |
| To see the browser history support in action, see the |
| <a href="http://rap.eclipsesource.com/rapdemo/examples">RAP Examples</a> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="RWT" milestone="M3"> |
| <title> |
| Customizable focus indicator |
| </title> |
| <description> |
| <![CDATA[ |
| We implemented a themeable focus indicator for buttons. |
| This allows to show the focus rectangle <i>inside</i> the buttons. |
| <br /> |
| <img style="margin-top:10px" src="images/Button-focus.png" /> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="Look & Feel" milestone="M3"> |
| <title> |
| Theming and new designs |
| </title> |
| <description> |
| <![CDATA[ |
| We extended the theming for a couple of widgets (such as CTabFolder, |
| CLabel, Combo, Spinner and DateTime) and improved the new "fancy" |
| design e.g. the support for standalone views was added.<br/> |
| <img style="margin-top:10px; margin-bottom:10px" src="images/fancyStandaloneView.png" /> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="Tooling" milestone="M3"> |
| <title> |
| Session Timeout Option |
| </title> |
| <description> |
| <![CDATA[ |
| The RAP Application Launcher now has an option to specify the session |
| timeout in Seconds. This can come in handy if you whish to test session |
| shutdown scenarios and saves you from remembering the lengthy |
| <code>org.eclipse.equinox.http.jetty.context.sessioninactiveinterval</code> |
| VM argument. |
| <br/> |
| <img style="margin: 10px 10px 0px;" src="images/SessionTimeout.png" /> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="RWT" milestone="M4"> |
| <title> |
| Drag and Drop |
| </title> |
| <description> |
| <![CDATA[ |
| RAP now supports Drag and Drop. The user can use the mouse and keyboard |
| the way he is used to in his desktop applications to move, copy or link |
| data. The API is SWT-compatible, using <code>DragSource</code>, |
| <code>DropTarget</code> and <code>Transfer</code>. |
| <br /> |
| This first version still has some limitations, in particular: feedback- |
| effects (e.g. for trees and tables) are missing, the escape key can not |
| be used to cancel a drag, and the operationChanged-event is not yet |
| thrown. We expect to deliver those features soon. |
| <br /> |
| <img style="margin: 10px 10px 0px;" src="images/dnd.png" /> |
| <br /> |
| To try out drag and drop online, see the |
| <a href="http://rap.eclipsesource.com/rapdemo/examples">RAP Examples</a> |
| (go to the <i>List</i> page). |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="RWT" milestone="M4"> |
| <title> |
| Changes to ISessionStore |
| </title> |
| <description> |
| <![CDATA[ |
| The <code>ISessionStore</code> has undergone slight API changes. |
| The methods <code>addSessionStoreListener</code>, |
| <code>removeSessionStoreListener</code> |
| and <code>getAttributeNames</code> are affected in that they don't throw |
| an exception anymore when being invoked on an invalidated session. |
| <br /> |
| Instead their return value indicates whether they completed successfully. |
| Due to the multi-threaded environment, it is not possible to reliably |
| determine the outcome before calling one of these methods (isBound() |
| could have changed meanwhile). Please see the JavaDoc for more details. |
| <br /> |
| We don't expect to break existing clients, the changes are documented here |
| for completeness. However, if you are having trouble file a |
| <a href="/rap/bugs/">new bug</a> or re-open |
| <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=278258">bug 278258</a> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="JFace / Workbench" milestone="M4"> |
| <title> |
| ControlDecoration |
| </title> |
| <description> |
| <![CDATA[ |
| JFace ControlDecoration support has been added. Clients can now |
| decorate any kind of control with an image and description text shown |
| when the user hovers over the image. |
| <img style="margin-top:10px; margin-bottom:10px" src="images/ControlDecoration.png" /> |
| <br/> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="Look & Feel" milestone="M4"> |
| <title> |
| Widget Theming |
| </title> |
| <description> |
| <![CDATA[ |
| Almost all RWT widgets got a new theming. The theming is coupled with the |
| <a href="http://www.eclipse.org/rap/noteworthy/news_13M2.php#Look%20&%20Feel"> |
| design examples</a>. So, we have created two themes. One for the |
| <a href="http://eclipsesource.com/blogs/2009/06/02/yes-its-a-rap-application/"> |
| business design</a> which uses a blue color scheme and one for the |
| <a href="http://eclipsesource.com/blogs/2009/09/02/new-fancy-rich-ajax-platform-rap-theme/"> |
| fancy design</a> which uses a green color scheme. To activate one of these |
| themes just add the bundle <code>org.eclipse.rap.design.example</code> |
| to your launch configuration and set the theming id in your branding to |
| <code>org.eclipse.rap.design.example.business.theme</code> or <code> |
| org.eclipse.rap.design.example.fancy.theme</code>. |
| <img style="margin-top:10px; margin-bottom:10px" src="images/RAPNewTheming.png" /> |
| <br/> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="RWT" milestone="M5"> |
| <title> |
| BrowserFunction |
| </title> |
| <description> |
| <![CDATA[ |
| With the support for SWT BrowserFunctions it is now possible to register |
| custom Java functions for a Browser widget and call them from JavaScript. |
| In addition it allows you to pass any parameters from JavaScript to the |
| Java function. |
| <br /> |
| Thanks to the donation of henzler informatik gmbh we were able to acquire |
| additional resources to have the BrowserFunction implemented for M5. |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="RWT" milestone="M5"> |
| <title> |
| ImageData |
| </title> |
| <description> |
| <![CDATA[ |
| <code>ImageData</code> and related classes (<code>ImageLoader</code>, |
| <code>ImageLoaderEvent</code>, etc.) are now public API. As a result, the |
| <code>Image(Device,ImageData)</code> constructor is also available. |
| <br /> |
| The factory methods (Graphics#getImage) are still the recommended way |
| for creating image in RWT. If single-sourcing is desired and the extra |
| memory is justifible, using constructors might be considered. |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="JFace / Workbench" milestone="M5"> |
| <title> |
| Multi-locale extension registry |
| </title> |
| <description> |
| <![CDATA[ |
| Since M4, the Equinox |
| <a href="http://archive.eclipse.org/eclipse/downloads/drops/S-3.6M4-200912101301/eclipse-news-M4.html#Equinox"> |
| extension registry is able to handle multiple locales</a> |
| (see bug |
| <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=244468">244468</a> |
| for details). A socalled LocaleProvider service is used to determine the |
| current locale. |
| <br /> |
| <br /> |
| The RAP workbench now registers a LocaleProider service that returns the |
| locale based on the RWT locale of the current session. |
| <br /> |
| Please note that you have to add a new system property in order to |
| activate the multi-language support for Equinox: |
| <br /> |
| <code>-Declipse.registry.MultiLanguage=true</code> |
| <br /> |
| <br /> |
| With these changes the <code>org.eclipse.rap.equinox.registry</code> |
| fragment is rendered obsolete. |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="JFace / Workbench" milestone="M5"> |
| <title> |
| Servlet Filter support |
| </title> |
| <description> |
| <![CDATA[ |
| Since M5, there is support for Servlet Filters in Equinox. See the |
| <a href="http://archive.eclipse.org/eclipse/downloads/drops/S-3.6M5-201001291300/eclipse-news-M5.html#Equinox"> |
| 3.6M5 New & Noteworthy</a> for details. |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="JFace / Workbench" milestone="M5"> |
| <title> |
| IApplication support |
| </title> |
| <description> |
| <![CDATA[ |
| With support for <code>IApplication</code>s, you're now able to start |
| a RAP application the same way as it is possible in RCP. This means |
| that you don't need to provide an <code>IEntryPoint</code> |
| implementation. |
| <pre> |
| <extension |
| id="myapp" |
| point="org.eclipse.core.runtime.applications"> |
| <application visible="true"> |
| <run class="org.eclipse.rap.demo.DemoWorkbench"></run> |
| </application> |
| </extension> |
| </pre> |
| As stated in this example, the entrypoint parameter to access the |
| application is equal to the id of the extension. This means the |
| application is available at <i>host:port/rap?startup=myapp</i>. |
| In case you want to refer to your application in the branding extension |
| point (e.g. as default entrypoint), you have to use the fully-qualified |
| name of the extension (e.g. org.eclipse.rap.demobundle.myapp). |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="Look & Feel" milestone="M5"> |
| <title> |
| Coolbar |
| </title> |
| <description> |
| <![CDATA[ |
| Before RAP 1.3 M5 the CoolbarManager has renderd the contribution items |
| into the main Coolbar. Since M5 the items render themselves. This results |
| in more flexibility and you can use all items which implements |
| <code>IContributionItem</code> and the method |
| <code>fill(ToolBar parent, int index)</code>. To render the items into the |
| UI a <code>ToolBar</code> is used instead of a <code>CoolBar</code>. Since |
| <a href="http://www.eclipse.org/rap/noteworthy/news_13M2.php">1.3 M2</a>, |
| RAP has a new <code>ToolBar</code> implementation which provides more |
| opportunities for |
| <a href="http://help.eclipse.org/galileo/index.jsp?topic=/org.eclipse.rap.help/help/html/advanced/theming.html"> |
| theming</a>. This gives you the possibility to style the |
| <code>ToolBar</code> in a way that fits more with your |
| <a href="http://www.eclipse.org/rap/noteworthy/news_13M2.php#Look%20&%20Feel"> |
| RAP design</a>. <br/> |
| <img style="margin-top:10px; margin-bottom:10px" src="images/newToolbarBusiness.png" /> |
| <br/> |
| <img style="margin-top:10px; margin-bottom:10px" src="images/newToolbarFancy.png" /> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="Look & Feel" milestone="M5"> |
| <title> |
| MenuBar |
| </title> |
| <description> |
| <![CDATA[ |
| The <a href="http://eclipsesource.com/blogs/2008/12/18/extended-presentation-api/"> |
| interaction desing API</a> gives you the possibility to style a Shell's |
| <code>MenuBar</code>. With RAP 1.3 M5 we have created a whole new |
| <code>MenubarManager</code> implementation to provide a much more flexible |
| menu. Therefore, we use a <code>ToolBar</code> to provide you a high themable |
| menubar. <br/> |
| <img style="margin-top:10px; margin-bottom:10px" src="images/newMenuBusiness.png" /> |
| <br/> |
| <img style="margin-top:10px; margin-bottom:10px" src="images/newMenuFancy.png" /> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="RWT" milestone="M6"> |
| <title> |
| FontMetrics |
| </title> |
| <description> |
| <![CDATA[ |
| In order to increase code-resuse for text measurement from SWT, we |
| introduced the classes <code>GC</code> and <code>FontMetrics</code>. |
| <br /> |
| <code>getAverageCharWidth</code>, <code>getHeight</code> from |
| <code>FontMetrics</code> and <code>getCharWidth</code>, |
| <code>stringExtent</code>, <code>textExtent</code> from <code>GC</code> |
| delegate to the respective methods from class <code>Graphics</code>. |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="JFace / Workbench" milestone="M6"> |
| <title> |
| JFace 3.6 |
| </title> |
| <description> |
| <![CDATA[ |
| We adopted the JFace 3.6 code base to make new JFace features available and |
| increase code-reuse between RAP and RCP. Some of the more noteworthy changes |
| are listed below: |
| <ul> |
| <li><code>PixelConverter</code> and <code>Dialog#convert...</code> |
| methods to convert between pixels and DLUs and vice versa</li> |
| <li><code>MessageDialog#CONFIRM</code> and <code>MessageDialog#open() |
| </code></li> |
| <li><code>RowLayoutFactory</code> and <code>RowDataFactory</code></li> |
| <li>Enhancements in <code>TableColumnLayout</code> and |
| <code>TreeColumnLayout</code></li> |
| <li><code>ConfigureColumns</code>, a column configuration dialog for |
| trees and tables</li> |
| <li><code>ArrayContentProvider#getInstance</code></li> |
| <li><code>ICheckStateProvider</code> for tree- and table-viewer with |
| checkboxes</li> |
| </ul> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="JFace / Workbench" milestone="M6"> |
| <title> |
| Forms 3.6 |
| </title> |
| <description> |
| <![CDATA[ |
| We adopted the Forms 3.6 code base too. New API added: |
| <ul> |
| <li><code>MasterDetailsBlock#createContent( IManagedForm, Composite )</code></li> |
| </ul> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="Look & Feel" milestone="M6"> |
| <title> |
| View contribution item visibility |
| </title> |
| <description> |
| <![CDATA[ |
| We have extended the branding to make all view contribution items visible |
| by default while using one of the |
| <a href="http://eclipsesource.com/blogs/2009/09/02/new-fancy-rich-ajax-platform-rap-theme/"> |
| new designs</a>. The <code>presentationFactory</code> subelement of the |
| <code>org.eclipse.rap.ui.branding</code> extension point got a new |
| attribute called <code>viewActionsVisible</code>. The value of this |
| attribute is <code>false</code> by default. So, all view contribution |
| items are invisble to provide a cleaner UI. When changing this value to |
| <code>true</code>, all items will be visible and the |
| <a href="http://www.eclipse.org/rap/noteworthy/news_13M2.php#Look%20&%20Feel"> |
| configuration menu</a> will be disabled. |
| <br/> |
| <img style="margin-top:10px; margin-bottom:10px" src="images/viewActionVisibility.png" /> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="Tooling" milestone="M6"> |
| <title> |
| Styled RAP Templates |
| </title> |
| <description> |
| <![CDATA[ |
| We have added the new designs and themes to the RAP templates. The old |
| templates made usage of the default theme. We changed this for two of |
| the three existing RAP templates. The following changes were made: |
| <ul> |
| <li><b>RAP Application with a view</b> uses the |
| <a href="http://eclipsesource.com/blogs/2009/11/20/advanced-rap-theming/"> |
| fancy theme</a> now.</li> |
| <li><b>RAP Maildemo</b> uses the |
| <a href="http://eclipsesource.com/blogs/2009/06/02/yes-its-a-rap-application/"> |
| business design</a> now.</li> |
| </ul> |
| The <b>Hello World</b> template still uses the default theme. |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="Integration with other Projects" milestone="M6"> |
| <title> |
| EMF on RAP |
| </title> |
| <description> |
| <![CDATA[ |
| We are proud to announce that <a href="http://www.eclipse.org/emf">EMF</a> |
| now provides RAP support out of the box. To see how it works, please refer |
| to this <a href="http://wiki.eclipse.org/RAP/EMF_Integration">wiki page</a>. |
| <br/> |
| <img style="margin-top:10px; margin-bottom:10px" src="images/emf_rap.png" /> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="Integration with other Projects" milestone="M6"> |
| <title> |
| Riena on RAP |
| </title> |
| <description> |
| <![CDATA[ |
| Initial support to run Riena Ridgets on RAP |
| has been provided by the Riena team. Please see |
| <a href="http://eclipsesource.com/blogs/2010/02/20/riena-meets-eclipse-rap-goes-to-browser/">this blog</a> |
| and the <a href="http://wiki.eclipse.org/Riena_on_RAP">Riena on RAP</a> |
| wiki page for further details. |
| <br/> |
| <img style="margin-top:10px; margin-bottom:10px" src="images/riena-on-rap.png" /> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="Integration with other Projects" milestone="M6"> |
| <title> |
| EPP Package |
| </title> |
| <description> |
| <![CDATA[ |
| The <a href="http://eclipse.org/epp">Eclipse Packaging Project</a> now |
| offers an <strong>Eclipse for RCP/RAP Developers</strong> package from its |
| download page. |
| <br /> |
| It is a complete set of tools for developers who want to create Eclipse |
| plug-ins, Rich Client or Rich Ajax Applications (RCP + RAP). |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="RWT" milestone="M7"> |
| <title> |
| Theme Contributions |
| </title> |
| <description> |
| <![CDATA[ |
| It is now possible to contribute CSS code to existing themes using the |
| extension point <code>org.eclipse.rap.ui.themes</code>. |
| This way, plug-in developers can easily add CSS rules for their controls |
| without the need to copy and extend an existing theme. |
| <br/> |
| <img style="margin-top:10px; margin-bottom:10px" src="images/ThemeContributions.png" /> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="RWT" milestone="M7"> |
| <title> |
| ServiceHandlers |
| </title> |
| <description> |
| <![CDATA[ |
| It is now possible to contribute <code>ServiceHandler</code>s via |
| extensions using the extension point |
| <code>org.eclipse.rap.ui.serviceHandler</code>. |
| This way, plug-in developers can easily declare ServiceHandlers |
| instead of registering them programmtically. |
| <br/> |
| <img style="margin-top:10px; margin-bottom:10px" src="images/ServiceHandlerExt.png" /> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="RWT" milestone="M7"> |
| <title> |
| Theme Extensions |
| </title> |
| <description> |
| <![CDATA[ |
| The theming was extended in serveral places |
| <ul> |
| <li> |
| The Shell has a new themeable element called <code>Shell-DisplayOverlay</code>. |
| When a modal shell with is opened, there is a usually invisible |
| element that is blocking all user-interactions with what is behind the |
| shell. This "overlay" can now be themed to visualize this behaviour, using |
| a semi-transparent background-color or image. |
| <br /> |
| For example: |
| <pre> |
| Shell-DisplayOverlay { |
| background-image: none; |
| background-color: #000000; |
| opacity: 0.5; |
| } |
| </pre> |
| <br /> |
| <img src="images/modal.png" style="margin-top: 10px; margin-bottom: 10px" /> |
| </li> |
| <li> |
| We introduced the <code>opacity</code>-property on the following widgets: |
| <br /> |
| <code>Label</code>, <code>CLabel</code>, <code>Composite</code>, |
| <code>Menu</code>, <code>Menuitem</code>, <code>ToolBar</code>, |
| <code>ToolItem</code>, <code>ToolTip</code> and |
| <code>ProgressBar-Indicator</code> |
| <br /> |
| <img src="images/opacity.png" style="margin-top: 10px; margin-bottom: 10px" /> |
| <br /> |
| This is an easy way to achieve semi-transparency. Be aware that there are |
| currently two unresolved issues regarding its use in Internet Explorer: |
| <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=302713">Bug 302713</a> |
| and |
| <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=303603">Bug 303603</a> |
| <br /> |
| In some cases those can trigger minor graphical glitches. |
| </li> |
| <li> |
| The Combo and CCombo widgets now have a styleable FocusIndicator like Button. |
| </li> |
| <li> |
| The Text widget now supports backgroundGradient. |
| </li> |
| <li> |
| Tables with alternating row colors, combined with vertical-only grid |
| lines are a common design that was so far not supported by RAP. With |
| the introduction of the <code>vertical</code> and <code>horizontal</code> |
| states for the <code>Table-GridLine</code>-element, this is now possible: |
| <pre> |
| Table-GridLine { |
| color: #d0d0d0; |
| } |
| |
| Table-GridLine:horizontal { |
| color: transparent; |
| } |
| </pre> |
| <br /> |
| <img src="images/table-vertical-lines.png" style="margin-top: 10px; margin-bottom: 10px" /> |
| </li> |
| <li> |
| We now support animations as part of the theming. They allow for simple |
| transition-effects to create a more organic user-experience. Currently |
| only a few widgets (<code>Button</code>, <code>ToolItem</code>, |
| <code>ToolTip</code>, <code>Shell-DisplayOverlay</code>, |
| <code>Menu</code>) and effects are available, but you can expect |
| more in the future. The API is a subset of the |
| <a href="http://www.w3.org/TR/css3-animations">CSS3 Working Draft for |
| animations</a>. To define an animation you need to set three values |
| (effect, duration, and timing function) and you can define several per |
| widget. |
| <br /> |
| For example, to create an animated hover-effect for buttons, the syntax |
| could look like this: |
| <pre> |
| Button : { |
| animation: hoverIn 200ms linear, hoverOut 500ms ease-out; |
| } |
| </pre> |
| </li> |
| </ul> |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="RWT" milestone="M7"> |
| <title> |
| Graphics Context |
| </title> |
| <description> |
| <![CDATA[ |
| A subset of the graphics context (GC) from SWT is now available in RAP. |
| It can be used for basic drawing on the the <code>Canvas</code> widget: |
| <br/> |
| <pre> |
| Canvas canvas = new Canvas( parent, SWT.NONE ); |
| canvas.addPaintListener( new PaintListener() { |
| public void paintControl( PaintEvent event ) { |
| Rectangle rect = canvas.getClientArea(); |
| event.gc.drawOval( 0, 0, rect.width - 1, rect.height - 1 ); |
| } |
| } ); |
| </pre> |
| <img style="margin-top:10px; margin-bottom:10px" src="images/gc.png" /> |
| <br/> |
| The graphics are rendered on HTML5 Canvas on the client, for Internet |
| Explorer, a VML-based (vector-graphics) emulation is used. |
| The performance on IE may degrade drastically when the number of shapes |
| drawn exceeds a limit of about 500. |
| <br/> |
| To see the graphics context in action, try out the Canvas page in the |
| <a href="http://rap.eclipsesource.com/rapdemo/examples">RAP Examples</a>. |
| ]]> |
| </description> |
| </entry> |
| |
| <entry category="RWT" milestone="M7"> |
| <title> |
| Font Dialog |
| </title> |
| <description> |
| <![CDATA[ |
| RAP now contains an implementation of the SWT FontDialog. |
| <br/> |
| <img style="margin-top:10px; margin-bottom:10px" src="images/FontDialog.png" /> |
| ]]> |
| </description> |
| </entry> |
| |
| </noteworthy> |