Eclipse Scout Kepler Milestone 7 (Part 1/2)

New SDK Features

The last Milestone build of Eclipse Scout is live and ready for testing. You can update your Eclipse via P2-Updatesite: http://download.eclipse.org/scout/releases/3.9. The Scout Kepler M7 Package is available from here.

Scout Explorer Changes

bug 394132

Scout Explorer View

The Scout Explorer View shows all Scout Bundles and provides folders below them to manage the typical objects for a bundle type.

The detection and layout of this bundle entries (the green, orange and blue nodes) have been redesigned for Scout 3.9:

  1. The layout of the tree is completely based on the dependencies of your bundles. As the dependencies between bundles build up a graph, the Scout Explorer may show a single bundle at various places in the tree considering all paths in the actual dependency graph.
  2. As a consequence, each bundle can contain several bundles of the same type (breaking the trinity client-shared-server) for a more flexible layout.
  3. The tree also shows Scout bundles that are in your target platform (binary) and are only referenced by your workspace bundles.
  4. Fragments are shown as well
  5. There is a context menu Add Scout Bundles… on the bundle nodes that allows you to create sub modules or new bundles within your existing project.

Support for Scout Mobile UI

bug 394127 and bug 378151

Scout 3.9 comes with an enhanced web user interface (RAP) that is optimized for smartphone (mobile) and tablet devices.

By creating a new Scout Project using the Scout SDK you automatically get the mobile support when choosing to create a RAP user interface bundle. In the default setup you get four servlets prepared:

  1. web for normal personal computers or laptops
  2. mobile for smartphone devices
  3. tablet for tablet devices
  4. root entrypoint for all browsers that will autodetect your device and dispatch to the best of the servlets above.

Furthermore you get a client.mobile bundle prepared that includes all modifications to your client that should apply to mobile and tablet devices only (e.g. if you want to hide or replace some features).

Default Super Classes are Customizable

Default Super Classes Preference Page

In Scout 3.8 when creating a new object using a wizard you already have the possibility to choose from a list of possible super classes. But the super class selected by default is always the same. So if you e.g. have defined a project specific template for forms called ‘AbstractMyProjectForm’ you always have to remember to change the selected super class when creating forms.

With Scout 3.9 you now have the possibility to configure the super classes that should be used by default for each Scout project independently: Go to Window -> Preferences -> Scout -> Default Super Classes. There you can specify the default super class to use for each object type and Scout project.

This configuration is also considered if you don’t explicitly have the possibility to choose a super class in the wizards: E.g. when creating a new Form by default there are also ‘Cancel’ and ‘OK’ buttons created. If you now modify the default super class for OK buttons, this is automatically used by the new Form wizard as well.

This mechanism also respects the new extensible Scout objects defined in ‘org.eclipse.scout.rt.extension.client’: If your project has this dependency, the Scout SDK prefers those objects over the standard ones (unless you have modified the defaults).

The settings are stored in the project preferences so that you can share them with your team using e.g. a team provider like SVN, CVS or Git.

More Flexible Project Structure

bug 394125

Configure the default packages

In Scout 3.9 the SDK does no longer rely on a specific package structure.

This affects the Scout Explorer which now searches for objects in a whole plugin instead of specific packages. As a consequence the folder ‘Process Services’ and ‘Outline Services’ have been merged to a general ‘Services’ node containing all services except lookup and the common ones. This gives you more flexibility in usage and design of your services.

Furthermore you have the possibility to specify the target package when creating new Scout objects using the Scout SDK Wizards. The packages where new objects are created by default can be configured using the preference page: Window -> Preferences -> Scout -> Default Packages.

These settings are stored in the Scout project preferences and can therefore be shared using a team provider like SVN, CVS or Git.

Improvements for the NLS Field

bug 380507

We have changed the sorting and presentation of the NLS proposal field so that the list behaves more intuitive and that it is more clear why a match is included in the list. This includes separation of the matches depending on type and sorting according to relevance.

You can find these new features and more here: http://wiki.eclipse.org/Scout/NewAndNoteworthy/3.9.

Part 2 will follow next Wednesday.