Eclipse Rich Client Platform

While the Eclipse platform is designed to serve as an open tools platform, it is architected so that its components could be used to build just about any client application. The minimal set of plug-ins needed to build a rich client application is collectively known as the Rich Client Platform.

Applications that don't require a common resource model can be built using a subset of the platform. These rich applications are still based on a dynamic plug-in model, and the UI is built using the same toolkits and extension points. The layout and function of the workbench is under fine-grained control of the plug-in developer in this case.

When we say that the Rich Client Platform is the minimal set of plug-ins needed to build a platform application with a UI, we mean that your application need only require two plug-ins, org.eclipse.ui and org.eclipse.core.runtime, and their prerequisites. However, rich client applications are free to use any API deemed necessary for their feature set, and can require any plug-ins above the bare minimum. Examples include the Help UI, and the Update Manager.

For more details on what is included in the Rich Client Platform, see the RCP FAQ.

FAQs

Articles and Tutorials

Help Topics

The following are relevant help topics from the Platform Plug-in Developer Guide (from within the Eclipse IDE: Help > Help Contents > Platform Plug-in Developer Guide). The links below are to the online Eclipse 3.0 help.

Newsgroups

The following newsgroups have useful discussions, questions and answers relevant to the development of RCP applications.

If you have a question, please check the RCP FAQ before posting to the newsgroups.

Kindly avoid posting to the developer mailing lists as these are intended for use by the development teams and others participating in the development of Eclipse itself.

Browser Example

The RCP Browser Example is an example of a simple RCP app. Here is a screen shot.

To load the browser example source into your workspace, load project org.eclipse.ui.examples.rcp.browser from the Eclipse CVS repository.
Click here for instructions on using CVS with Eclipse.

For instructions on running the example, see the readme file.

To run the example in binary form (last updated June 11, 2004 for the 3.0 RC2 build):

  1. Download the RCP Runtime build from the Downloads page, and extract it to a folder such as c:\browser-example.
  2. Download the browser plug-in zip and extract it to the eclipse/plugins subfolder.
  3. Replace the eclipse/configuration/config.ini file with the appropriate config file from the browser plugin. For example, on Windows, copy eclipse/plugins/org.eclipse.ui.examples.rcp.browser_3.0.0/config_win32.ini to eclipse/configuration/config.ini .
  4. Run: eclipse.exe.

Text Editor Example

The RCP Text Editor Example is available from the platform-text development resources page.

R2.1 Style Presentation

The presentation of your RCP application can be changed using the org.eclipse.ui.presentationFactories extension point. This example will show how to use the R2.1 presentation, provided by the org.eclipse.ui.presentations.r21 plugin, in the RCP Browser Example application. Here is a screen shot of the browser example using the R2.1 presentation.

The following steps will deploy the plugin into the RCP application and activate it by setting some preferences.

  1. Deploy the RCP browser example by following these instructions.
  2. Build and deploy the org.eclipse.ui.presentations.r21 plugin.
  3. Copy the file eclipse/plugins/org.eclipse.ui.presentations.r21_3.0.0/r21presentation.ini into the directory eclipse/plugins/org.eclipse.ui.examples.rcp.browser_3.0.0.
  4. Edit eclipse/plugins/org.eclipse.ui.examples.rcp.browser_3.0.0/plugin.xml so that the products extension looks like:
       <extension
             point="org.eclipse.core.runtime.products"
             id="product">
          <product
                name="%productName"
                application="org.eclipse.ui.examples.rcp.browser.app">
             <property
                   name="appName"
                   value="%swtAppName"/>
             <property
                   name="windowImages"
                   value="icons/eclipse.gif,icons/eclipse32.gif"/>
             <property
                   name="aboutText"
                   value="%aboutText"/>
             <property
                   name="aboutImage"
                   value="icons/eclipse_lg.gif"/>
             <property
                   name="preferenceCustomization"
                   value="r21presentation.ini"/>
          </product>
       </extension>
    
  5. If you are not using the update configurator, then remember to edit the osgi.bundles property (in ./eclipse/configuration/config.ini) to include the new plug-in.
  6. Run: eclipse.exe.

Design documents

The following are the original design documents for the RCP work done in Eclipse 3.0. They are somewhat out of date and are provided here mainly for historical interest. The tutorials and help topics above provide better materials for getting started with RCP.

Other Resources

The following are other resources describing the Eclipse Rich Client Platform, or related subjects: