Here are some of the more noteworthy things available in the Mars milestone build M5 (2015-01-30)
which is now available for download.
We also recommend to read the Tips and Tricks, either via Help > Tips and Tricks... or online for
Platform,
JDT, and
PDE.
Platform | |
Perspective Customization |
After 3 years of absence the Customize Perspective Dialog and Reset Perspective are back to Eclipse.
The dialog which allows to configure the visible menu, toolbar, action sets
and shortcuts was broken starting with Eclipse 4.2, together with the the ability to reset the perspective.
For more information see bug 420956. |
Nested/Hierarchical view of projects |
The Project Explorer now provides the ability to view the projects in a hierarchical (a.k.a. nested) form. For modular
projects, this allows to have your Project Explorer mapping more closely the organization of your modules as they are on the
file system. This hierarchical view of projects often makes easier to navigate modular projects.
Hierarchical view of projects can be triggered from the Project Explorer view menu, under the Projects Presentation item.
Then it makes the folders that are at the same location as a project replaced by the project, and the projects that are nested under other projects will not be shown as root elements. This implementation relies on the Common Navigator Framework. |
Workspace location in preferences |
The Workspace preference page now shows the current workspace path. In addition the path can be configured to appear in the
window title, a feature that previously was only available through the -showLocation command line argument.
This argument is still in effect and overrides the preference.
|
New CSS properties for the Section title bar |
The Forms Section title bar can now be styled with special CSS properties for a Section:
By using the same color for the background-color-titlebar and background-color-gradient-titlebar CSS property, like in the sample above, you get a solid background color. For more information see bug 431635. |
Support for multiple style sheet rules for the same selector |
The CSS engines now scans all style sheets and combines all matching rules into a common style. This allows plug-ins to override previously defined styles:
For more information see bug 458342. |
Improved look for Forms based editors in the dark theme |
Using the new CSS capabilities in M5 to style the Section, the dark theme has been improved.
The following image demonstrates the old look of the Section title bar, where the title bar had a hard coded white gradient.
The following image demonstrates the new default look in the platform dark theme.
For more information see bug 430205. |
Provisional EHelpService service |
M5 provides the provisional help service EHelpService in the IEclipseContext .
EHelpService is a thin wrapper to the WorkbenchHelpSystem in the Eclipse IDE and allows customers to
provide their custom implementation in Eclipse RCP applications.
|
Improved reporting of UI freezes and potential deadlocks |
The interactive UI monitoring reporting has been improved to provide better error messages in case of
potential deadlocks.
For more information see bug 458311. |
Message registry |
Added support for binding control attributes for localization to a value of a messages class.
By using such a binding, the dynamic update of widgets due to locale changes at runtime (Eclipse Translation Pattern)
gets easier to implement, since the localized widgets (e.g. Labels , Buttons , etc.)
are managed by the message registry.
To use the message binding for a messages class named @Creatable public class MyMessageRegistry extends BaseMessageRegistry<MyMessages> { @Override @Inject public void updateMessages(@Translation MyMessages messages) { super.updateMessages(messages); } } It can then be used like this: @Inject MyMessageRegistry registry; @PostConstruct public void init(Composite parent) { Label myFirstLabel = new Label(parent, SWT.WRAP); Label mySecondLabel = new Label(parent, SWT.NONE); Label myThirdLabel = new Label(parent, SWT.NONE); // bind myFirstLabel via method reference registry.register(myFirstLabel::setText, (m) -> m.firstLabelMessage); // bind mySecondLabel via method name registry.register(mySecondLabel, "setText", "secondLabelMe ssage"); // bind myThirdLabel via property name registry.registerProperty(myThirdLabel, "text", "thirdLabelMessage"); }
The |
Text search speedup |
Text search has been sped up by a factor 3x-4x for full workspace searches on multi-core machines.
Text search now uses the For more information see bug 441016. |
Transparent background for Control |
SWT has added support to set a Control 's background as transparent. The Color class now supports specifying an alpha value (integer: 0 to 255) for transparency.
Calling Control#setBackground(Color color) with a transparent color (color with alpha value '0'), sets the control's background as transparent.
List of new classes and APIs:
Note:
Snippet365 in action (Controls with
|
SWT Tools | SWT Tools are now available in the Eclipse Platform p2 repository. SWT Tools provides tools for developing SWT itself (JNIGen) but also general purpose tools like Sleak (monitors the creation and disposal of SWT graphics resources) and SWT Spy (prints out information like style, layout and parent about the widget under the cursor). |
PDE | |
Reload button added in target editor |
In the Target Editor, on the Locations section, there is a reload button that clears the cached
p2 profile and then resolves the target. This button is helpful in scenarios where the target editor is left in inconsistent
state due to issues like unstable network connection.
|
Show view in plug-in perspective has changed |
In the Plug-in Development Perspective, the default Show View menu now has
|
The above features are just the ones that are new since the previous milestone build. Summaries for earlier Mars milestone builds: