Eclipse Yoxos Services Downloads Blogs About
Home > Blogs >

Posts Tagged ‘milestone’

on Mar 23rd, 2012M6 brings markup text support to RAP

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:

MarkupInTable M6 brings markup text support to RAP

Just enable the markup support for a certain widget (see below), then you can make its text bold, italic, yellow or … no, not blinking! Actually, RAP will validate the markup and allows only a selection of tags (no <script> tags, please!). But since the <img> tag is in that list, you can add a smiley instead icon wink M6 brings markup text support to RAP .

Table table = new Table( parent, SWT.BORDER );
table.setData( RWT.MARKUP_ENABLED, Boolean.TRUE );
TableItem item = new TableItem( table, SWT.NONE );
item.setText( "Some <em>text</em> with <strong>markup<strong>" );

This also means that you don’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:

Label label = new Label( parent, SWT.NONE );
label.setData( RWT.MARKUP_ENABLED, Boolean.TRUE );
label.setText( "<a href=\"http://eclipse.org/rap\" target=\"_blank\">RAP project page<a>" );

Don’t like the setData() programming? We don’t like it either. But for now, it’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.

Try out the markup support in our updated online demo! BTW, did you notice that this is a deep link into the demo application? Yes, there was a bug preventing them from working in RAP for long, and it’s now finally fixed! You can now use the BrowserHistory to navigate to a certain point in your application right on startup. Here’s the link to an example page that shows markup in a Table.

And there are more Table and Tree enhancements, such as the fixed columns support that lets you exclude one or more colums from horizontal scrolling. Check out the full list of changes in the New & Noteworthy.

Get it while it’s hot, this milestone is a must have icon wink M6 brings markup text support to RAP

on Aug 29th, 2011Lightweight OSGi Applications using RAP’s Widget Toolkit

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, which makes the main loop obsolete in this kind of applications.

RAP is well known as an “RCP for the web browser”, 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’s widget toolkit (RWT) to create simple web UIs for your applications, without the heavy weight Eclipse UI stack?

With RAP 1.5, you can now simply include RWT in any OSGi application. You only need two bundles: org.eclipse.rap.rwt (the RAP widget toolkit itself) and org.eclipse.rap.rwt.osgi which integrates RWT with the OSGi HTTP service. There are no tie-ins with Equinox anymore, thus RAP also works with other OSGi containers.

To create a UI with RWT, you have to implement the interface IEntryPoint, here’s a simple example:

  public int createUI() {
    // Create a maximized top-level shell without trimmings that represents the main "page"
    Display display = new Display();
    Shell page = new Shell( display, SWT.NO_TRIM );
    page.setMaximized( true );
    page.setLayout( new GridLayout() );
 
    // Create contents of main shell
    Label label = new Label( page, SWT.NONE );
    label.setText( "Hello" );
    Button button = new Button( page, SWT.PUSH );
    button.setText( "World" );
 
    // Open the top-level shell and run the main loop to process events
    page.layout();
    page.open();
    return 0;
  }

Now what’s new is that, instead of registering this entry point with an extension point, you can now implement the new ApplicationConfigurator interface like this:

  public void configure( Context context ) {
    context.addEntryPoint( "/simple", SimpleEntryPoint.class );
    context.addBranding( new AbstractBranding() {
      @Override
      public String getServletName() {
        return "simple";
      }
      @Override
      public String getTitle() {
        return "Simple RWT Example";
      }
    } );
  }

When this implementation is registered as an OSGi service, you can access the UI with a web browser:

RWTSimple Lightweight OSGi Applications using RAPs Widget Toolkit

You can check out the example project example.rwt.simple from my rap-helpers repository on github. 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.

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 his blog. BTW, Frank and me plan to demo the possibilities of this approach in our talk Dynamic web applications with OSGi and RAP at the EclipseCon Europe – vote for it if you’re interested!

on Feb 4th, 20105 new things in Riena 2.0 M5 (just shipped)

We proudly present Riena 2.0 M5 – the first release in the 2.0 stream.  As you can see by the long New & Noteworthy, we have been very active in last six weeks. Read on for my five favorite new things:

1. Pluggable Marker Decorations

The new BorderMarkerSupport draws red-borders around a widget and replaces the standard ControlDecoration. You can select either error decoration style via the Look-and-Feel settings.

riena border decoration 5 new things in Riena 2.0 M5 (just shipped)

2. Enhanced Master/Details Widget

The Master/Details Widget automatically links a table with the details area on the bottom (or top). It is used heavily by some of Riena’s consumers. As a result we have been receiving good feedback and have added several requested features on this milestone:

  • nicer border (includes button area, separates table from buttons with a single line)
  • API to participate in the life-cycle (before / after selection, apply, remove, new)
  • API to ‘suggest’ a new entry – it will show in the details area and Apply will enable
  • API to tweak the margin and spacing of the Master/Details widget

riena master details border 5 new things in Riena 2.0 M5 (just shipped)

3. Image Button Widget

The SWT Buttons have a system-defined look that is hard to customize (for example the background color cannot be changed). Riena’s ImageButton Widget emulates a button using three images (standard, hover, pushed state).

riena image button 5 new things in Riena 2.0 M5 (just shipped)

4. Multiple Default Buttons per Controller

Riena’s Controllers have a new API that supports several default buttons per controller. The default button has a blue glow when enabled. In that state it will automatically be pushed when the user hits ENTER (anywhere).

riena default buttons1 5 new things in Riena 2.0 M5 (just shipped)

5. Controller Testing

Controller testing is now very straightforward and has been decoupled from the UI (widgets). Just subclass AbstractSubModuleControllerTest to get started. In addition your controller has to use the new API getRidget(Class, String) instead of getRidget(String). The package org.eclipse.riena.client.controller.test in the org.eclipse.riena.tests bundle has several examples.

Read the New & Noteworthy for additional details on these items.

on Nov 24th, 2009Eclipse Riena 1.2.0.M3 shipped – releasing in December

We Riena committers smoothly shipped a fresh Riena Milestone last Friday, this time 1.2.0.M3 (download). Here’s the New & Noteworthy and the list of resolved items.

riena demo Eclipse Riena 1.2.0.M3 shipped   releasing in December

For the curious, here is the schedule leading towards the December release:

  • 12/04 – 1.2.0 RC1
  • 12/11 – 1.2.0 RC2
  • 12/15 – 1.2.0

After that the work will start concentrating on the summer release, which is part of the Helios release train.

on Nov 16th, 2009Eclipse RAP 1.3 M3 hits the road

After another 6 weeks of working hard towards the Helios Release, we’re a step closer. RAP M3 for Eclipse 3.6 is out and can be obtained from the RAP project page. Besides another 130 bugfixes and many New and Noteworthy features, here are my personal favorites of this milestone:

Non-shared SWT resources

Finally, we decided to provide constructors and a dispose mechanism for SWT resources like fonts, images, colors and cursors. While we still recommend to use the factory-based approach, this features helps a lot when single-sourcing applications that use the resource constructors in a verbose manner.

color ctor Eclipse RAP 1.3 M3 hits the road

Yay, it compiles!

Browser History support

You now have the possibility to interact with the client-side browser history. This allows you to set “bookmarks” (eg. when switching tabs or processing a particular workflow) and the user can jump back and forward. Thanks again to Ralf Zahn from ARS who contributed this feature.

BrowserHistory Eclipse RAP 1.3 M3 hits the road

Dispose events on session timeout

We also introduced new Listener support on the Display so you’re now able to listen for Dispose events of the Display which is triggered when the session terminates. This way you don’t need to rely on servlet-specific API but rather use the same mechanism as in SWT to clean up your session. In addition you can queue runnables via Display#disposeExec that are executed once the session dies.

I hope you all enjoy the new milestone and give as feedback as fast as possible, API and feature freeze  is approaching icon wink Eclipse RAP 1.3 M3 hits the road

on Nov 2nd, 2009Eclipse 3.6 M3 (Helios) available for download

Milestone #3 for Eclipse 3.6 is now available for download.

Here are the noteworthy changes up this milestone:

My favorite change is the new support for software installation while running & debugging. This should be a huge time-saver for all developers who are adding p2 support to their RCP apps. It permits to do install operations in a launched application. Previously this was only possible after regularly deploying the RCP application via the export wizard.

launch config Eclipse 3.6 M3 (Helios) available for download

    on Oct 14th, 2009Eclipse Riena 1.2.0.M2 released

    The Riena committers have just done it again: Riena 1.2.0.M2 is now out the door (download). Here’s the New & Noteworthy and the issues fixed in this milestone. Read on for my personal favorites:

    • New ridgets: ILinkRidget, IBrowserRidget, ITraverseRidget (for SWT’s Slider, Scale and Spinner widgets). Thanks to Florian from Redview for these contributions (snippets)riena new ridgets Eclipse Riena 1.2.0.M2 released
    • IComboRidget now supports  CCombo: the CCombo widget works much better with our marker framework, since it supports different background colors (the regular combo does not!). Markers use background colors to point out required or incorrect data. Check out the new CCombo demo in the playground.
      riena ccombo Eclipse Riena 1.2.0.M2 released
    • MasterDetails improvements: (a) the MasterDetails widget now has an ‘auto apply’ mode, meaning that any changes done in the details area in the bottom will instantly be applied back to the original model in the table (snippet)
      riena master details auto apply Eclipse Riena 1.2.0.M2 released(b) if you’ve edited the details and navigate away or hit the ‘New’ button, you’ll be warned that you’re about to discard your changes. If you find it annoying, you can also turn it off.riena master details confirm Eclipse Riena 1.2.0.M2 released
    • Automatically synchronize enablement state of a label and another widget: Riena now has a mechanism that keeps the enabled-state of a label and another widget in lock-step. Example: you have a Label with the id “labelName” and a Text widget with the id “name”. If the text field is disabled, the label will be disabled too. The default strategy looks for the “label” prefix to associate two widgets with each other (i.e. labelXYZ <-> XYZ). However you can use the labelfinderstrategy extension point to provide a different strategy, if desired.
    • riena labelfinderstrategy Eclipse Riena 1.2.0.M2 released

    Kind regards,
    Elias.

    on Oct 14th, 2009Eclipse e4 1.0 M1 Released

    Today, the Eclipse e4 project had its first 1.0 milestone release.

    This is the beginning towards sprinting for the 1.0 final release.

    The big new and noteworthy in this milestone is support for remote debugging of JavaScript and in particular e4 JavaScript bundles. The support is currently restricted to Mozilla Rhino, however in true Eclipse fashion, the JavaScript debug model and extension models are in place to allow supporting other JavaScript runtimes.

    js debug 300x286 Eclipse e4 1.0 M1 Released

    If you’re interested in Eclipse e4, here’s some resources:

    Enjoy and please consider contributing to the e4 effort!

    on Oct 8th, 2009Eclipse RAP 1.3 M2 Released

    The RAP team is proud to announce the second milestone for the Helios release.

    As Holger already mentioned in his blog post, part of the milestone is a new design option for RAP applications. You can either use it as is or customize it depending on your needs.

    fancy 300x194 Eclipse RAP 1.3 M2 Released

    Together with the new fancy design, there is also a new Configuration dialog to enable and disable the view actions per stack. Additionally we added an effect called Lightbox which occurs when the dialog is open.

    ConfigurationDialog Eclipse RAP 1.3 M2 Released

    Another thing I’m pretty excited about – the help system. The RAP runtime doesn’t provide everything you need for the whole help system, we just provide the infrastructure to plug in any help system implementation you want. Depending on your needs you can either use a pretty simple implementation or single-source the real help system implementation (org.eclipse.help.ui) yourself (great chance to get involved by the way).

    helpsystem Eclipse RAP 1.3 M2 Released

    For those of you who are working a lot with tabular data, we now provide cell tooltips on the TableViewer if you use a CellLabelProvider. This enables you to provide tooltips on the fly for all of your table cells.

     Eclipse RAP 1.3 M2 Released

    Looking at this milestone in numbers, we fixed 100 bugs and resolved 36 enhancements – this includes another 23 new APIs that are now available for you. We’re pretty excited about the Helios release and looking forward to the next milestone.

    Be sure to check out the whole New & Noteworthy as there are much more details we added in M2!

    on Oct 2nd, 2009Eclipse Helios M2 is out (EPP)

    The second milestone (M2) of next years’ Eclipse Simultaneous Release called Helios is now available!

    I am proud that I am able to announce the availability of the corresponding Helios EPP M2 packages. You can download them from the usual EPP nightly build page www.eclipse.org/epp/download.php.

    It’s the first time ever that the EPP packages are available so soon in the yearly release cycle and I think it is a good opportunity to get a lot of early feedback. The Eclipse Platform team did this all the time, but hopefully this will help other projects to get more testing by the community.

    Thanks to all that helped to make this happen!

    © EclipseSource 2008 - 2011