|
|
New Look and Feel |
The look and feel of the workbench has evolved. Here are some of the things you will notice:
|
|
|
The new Welcome |
Eclipse 3.0 now opens with a new Welcome. It contains several pages allowing you to learn about Eclipse, follow tutorials, try out samples or learn what's new in this release. The new feature is fully pluggable and Eclipse-based products can define their own Welcome using the same mechanism. |
|
|
Responsive UI |
A number of changes have occurred in the UI to support a higher level of responsiveness. This includes support for running jobs in the background instead of tying up the UI and having to wait. What has been added:
The new Progress view showing the progress of a CVS checkout and a Workspace build background operation. Many user operations can now optionally be run in the background. When you see the progress dialog with the Run In Background button you can select it and the operation you are running will allow you to continue to work. This dialog also shows you the details of other currently running operations in the workspace and informs you when one operation is blocked waiting for another to complete. |
|
|
Scalable UI
|
The Platform has provided additional ways for controlling workbench clutter allowing Eclipse-based products to scale down what the user sees in the UI for various reasons. What has been added:
|
|
|
Fast View support enhancements
|
Fast view support has undergone some significant changes:
|
|
|
Editor management enhancements
|
A number of changes and enhancements have gone into the editor management in Eclipse. What has been done:
|
|
|
Improved Key Binding Support
|
Key bindings have been improved in the following ways:
|
|
|
Themes
|
The Eclipse Workbench now contains basic support for themes. This currently goes as far as allowing customization of colors and fonts used in the workbench at both the user and product level. |
|
|
Background workspace auto-refresh |
Changes made in the local file system can now be automatically refreshed in the workspace. This saves you from having to do a manual File > Refresh every time you modify files with an external editor or tool. This feature is currently disabled by default, but can be turned on from the Workbench preference page. |
|
|
Simplified manual build commands |
The set of available build commands in the Project menu has been simplified. The confusing Rebuild All and Rebuild Project commands have been replaced with a single Clean... command. The Build Project command in the Project menu (and in context menus) has been made smarter. It will now also build out-of-date prerequisite projects of the selected project if necessary. A new Build Working Set sub-menu lets you choose a set of projects to be built; this command brings all projects in that working set up to date, building any prerequisite projects that are not in the working set if (and only if) required. And you can quickly toggle auto-build on and off with Build Automatically. |
|
|
Cheat sheets |
Users can now be guided through long tasks with many steps using cheat sheets. This new feature allows developers to define steps using XML-based content files and optionally offer actions that perform the steps for the user. Several tutorials available off the new Welcome page use the cheat sheet mechanism. |
|
|
Rich Client Platform
|
Eclipse now includes the Rich Client Platform (RCP). Eclipse was designed as a universal tool integration platform. However, many facets and components of Eclipse are not particularly specific to IDEs and make equal sense in non-IDE applications. The rich functionality in the Eclipse plug-in architecture, runtime, and workbench can now be leveraged in building arbitrary applications. Here is a snapshot of a simple web browser implemented using the Eclipse RCP: (See RCP home page more details.) |
|
|
Dynamic, standards based runtime |
The Eclipse runtime has been modified to run on top of an implementation of the OSGi framework specification (see osgi.org). This move increases the runtime's flexibility and paves the way for the use of Eclipse in a wider range of scenarios and environments. By choosing a standard base for the runtime, Eclipse developers are able to reuse existing function and infrastructure. Regular Eclipse users benefit from these changes as the runtime is now dynamic. New plug-ins can be installed into a running Eclipse and used without restarting. |
|
|
|
SWT and AWT/Swing Interoperability |
Embedding Swing/AWT widgets inside SWT widgets is now supported on Windows with JDK 1.4 and above, and on GTK and Motif with recent beta versions of Sun JDK 1.5. This screen shot shows an SWT Shell containing a Swing JTable to the right of an SWT Tree. (SWT snippet used for this example.) |
|
|
SWT Browser widget |
SWT has a new browser widget that can display HTML documents. This native widget is supported on Windows (using Internet Explorer 5.0 and above), Linux GTK and Linux Motif (requires Mozilla 1.4 GTK2; Mozilla 1.5 GTK2 and Mozilla 1.6 GTK2 are also supported), Mac (Safari) and QNX (Voyager). See the SWT browser snippet and the SWT FAQ for details. The Eclipse Browser plug-in shown above is available from the Eclipse download page in the Example Plug-ins. |
|
|
Mac OS X improvements |
The Mac OS X implementation of SWT has been significantly extended and improved, particularly in the following areas:
|
|
|
SWT support for complex script and right-to-left language support |
In order to handle right-to-left and complex scripts it is necessary to deal with several problems. For example, languages like Hebrew and Arabic are written from right to left, which requires the text to be reordered according to the Bidi Algorithm described in Unicode annex #9, before drawing and measuring. Other languages, like Arabic and Farsi, require contextual shaping, which means that the same character can assume different forms according to its position in the word. Other common problems are combined characters or ligatures (two characters that are joined together). Languages like Thai have special rules for word breaking and cursor navigation. Windows supports all cases previously mentioned. On GTK support for Bidi is implemented, but complex scripts (Thai, South Asian scripts) are still not fully supported. |
|
|
SWT Virtual table and improved table performance |
In addition to significant performance improvements in this release, Table now supports the SWT.VIRTUAL style. This lets developers create tables with large amounts of data quickly. When TableItems are needed, they are created on-demand. (SWT snippet used for this example.) |
|
|
Other SWT improvements |
There are numerous other new SWT features and improvements in this release, including:
|
|
Previous Next