PDE
|
| Plug-in Spy |
Ever wondered where the source is for something you're looking at in Eclipse? Well wonder no more. The PDE team brings you Plug-in Spy. Simply select what you're interested in and invoke Plug-in Spy by pressing Alt+Shift+F1. Plug-in Spy currently supports inspection of:
- Selections
- Editors
- Views
- Dialogs
- Preference Pages
- Wizards

|
|
| PDE Quickfix for Java file issues |
To assist plug-in developers, extra validation was added to help with access restriction issues that could be solved by exporting a package. For example, say you have two plug-ins: a and b. If a attempts to use a class from b and b doesn't export the package containing the class, you'll receive a warning and applicable quickfix.

Quickfixes are now provided to aid users in adding dependencies to their plug-in that will attempt to resolve unresolved classes. If any plug-ins export a package that matches an unresolved class's package, PDE creates Quickfixes to add the package to an Import-Package statement or require the bundle directly through a Require-Bundle entry.

|
|
| Drag and drop in plug-in manifest editor |
Drag and drop support has been implemented in the plug-in manifest editor for the following sections:
- All Extensions
- Required Plug-ins
- Execution Environments
- Automated Management of Dependencies
- Classpath
Now objects within these tree or table viewers can be reordered with ease.

Note: The drag and drop support in the All Extensions section is "schema aware". |
|
| Highlight externalized strings in XML editors |
PDE now highlights externalized strings within all XML editor source pages.
Externalized strings found within XML attribute values or XML element text content can be easily identified by the default purple highlight color.

An Externalized strings preference has been added to customize the highlight color:
Window > Preferences > Plug-in Development > Editors

|
|
| Simple cheat sheet editor 2.0 |
The simple cheat sheet editor has been revamped to include the following enhancements:
- Custom XML formatting and XML comments preserved on save
- New Source page with a dedicated Outline view
- XML Syntax highlighting
- Quick outline (Ctrl+O)
- Drag and drop support
- Clipboard operation support (cut, copy and paste)
- Hyperlinking
- Selection synchronization between Definition and Source pages
- Browse button for Help section

|
|
| Improved management of PDE shortcuts |
PDE has improved the function and location of its shortcuts. Many editors now have common shortcuts available on their toolbars.

The Run and Debug shortcuts in the plug-in manifest editor have also been improved to automatically include any new dependencies required for launching the plug-in project. |
|
| New projects can now be added to working sets |
The New Plug-in Project wizard now has additional input fields to specify the working sets to which the new project gets added.

|
JDT
|
| Unused declared thrown exception warning enhancement |
The Unnecessary declaration of thrown checked exception warning has a new option that helps avoiding false positives. You can give the compiler a hint that a declared thrown exception is not unused by commenting it with the @throws tag.
The option is located on the Java > Compiler > Errors/Warnings preference page:

There is also a quick fix that helps you by adding the Javadoc tag. |
|
| CLDC 1.1 class file compatibility |
The Java compiler can now create CLDC 1.1 compatible class files.
You can set this on the Java > Compiler preference page:

|
|
| Highlighting matches in 'Find Occurrences' |
'Find Occurrences' now highlights the matches with different colors for read and write accesses.
|
|
| More quick assists |
The following quick assists were added to leverage existing refactorings:
- Create getter and setters for fields (encapsulate fields):
- Extract method on expressions:
|
|
| New cleanups |
Two new cleanups have been added:
- Correct indentation (also available as save action)
- Add unimplemented methods
Add unimplemented methods is most useful after adding a new method to an interface and you need to update all implementers of this interface.
You can also select a missing method error in the Problems view and select Quick Fix in the context menu. |
|
| SWT templates |
A set of templates have been added to provide code building blocks for SWT widgets. An SWT proposal context can be used to insert an SWT template into a Java editor.
For example: To add an SWT button, type 'B' in a method and press Ctrl+Space three times, then select the 'Button' template and press Enter:
SWT proposals are only shown if a project uses SWT. Amongst others, there are templates for:
- Button
- Combo
- Composite with GridLayout
- Group with GridLayout
- Label
- Link
- List
- Table
- Text
- Tree
You can adjust each template on the Java > Editor > Templates preference page and configure the behavior of the content assistant on the Java > Editor > Content Assist > Advanced preference page. |
|
| Extended template variables |
Templates like the SWT templates can also be added by users. Templates are text snippets with variables that mark input fields or can resolve to values depending on the current context. The following variables have been recently added or extended:
- ${id:link([proposal[,proposal]*])} - An input field with proposals
- ${id:var(type[,type]*)} - Resolves to a field, parameter or local variable from the current scope, assignable to given types
- ${id:newType(fullyQualifiedType)} - Resolves to a type name with import statement if required
- ${:import([type[,type]*])} - Resolves to an import statement for each type
- ${:importStatic([qualifiedName[,qualifiedName]*])} - Resolves to a static import statement for each qualified name
As an example, you might want to add a new template that adds a GridLayout to an existing Composite:
- Create a new template on the Java > Editor > Templates preference page with the name 'GridLayout' and the following content:
${composite:var(org.eclipse.swt.widgets.Composite)}.setLayout(new ${layoutType:newType(org.eclipse.swt.layout.GridLayout)}(${numberColumns:link(1, 2, 3, 4, 5)}, ${equalColumns:link(false, true)}));
- This gives you a new code assist

with the following result:

The template lets you choose a variable of type 'Composite' visible in the current scope, and quickly pick values for the constructor parameters from canned suggestions.
Consult the template help for more variables and examples. |
|
| Add pages to Javadoc export wizard |
The new org.eclipse.jdt.ui.javadocExportWizardPage extension point allows you to add pages to the Javadoc export wizard. For example, extenders can add support for taglets. |
|
| Wait for remote debug connection |
A socket listening connector has been added to the Remote Java Application launch type. This allows you to start the Java debugger listening for connection on a specific socket. The program being debugged can then be started with command line options to connect back to the debugger. Select "Standard (Socket Listen)" in the connection type drop down.

|
Platform
|
| SWT right-to-left support for Linux GTK |
SWT now provides support for mirroring on Linux GTK platforms.

|
|
| SWT inline input method |
StyledText has added support for inline input method in Win32, GTK, and Carbon. Note that this is an early implementation and that the API is subject to change.

|
|
| SWT features in TextLayout and StyledText |
TextLayout and StyledText now allow different strikeout colors, underline colors, and different underline styles.

|
|
| SWT full screen state |
API was added to put a Shell into a full screen state. This is preferable to creating an ON_TOP shell the size of the screen, which may not obscure the task bar or other desktop adornments on certain operating systems.

|
|
| New projects can now be added to working set |
New projects can now be added to working sets during their creation. Currently all major SDK wizards make use of this feature and there is API available for plug-in developers to do so as well.

|
|
| Remove items from launch history |
You can now remove items from the launch history menus. Use Control+Shift+Click to remove an item from a launch history (that is, select the menu item while pressing Control+Shift). The launch will be removed from your history but the configuration is not deleted.

|
|
| Edit configuration from a launch shortcut |
You can now open the launch dialog by control clicking a launch shortcut. For example, when you press the Control key while selecting Run As > Java Application from the context menu in a Java editor, the launch dialog will open to the most recently executed launch configuration associated with that file. If no launch configuration exists, the launch dialog will open to the associated type of launch configuration. |
Equinox
|
| New provisioning support |
The Equinox Incubator Provisioning team has released their second milestone.
- The agent no longer needs to be installed in c:\.
- Support has been added for uninstallation, update and rollback.
- An initial end user UI has been put in place aiming at replacing the current update manager UI.
- Write support for artifact and metadata repositories.
Though this support is still in incubation, you may want to take a look by checking out the Equinox Provisioning wiki page. |
|