<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<html>
<head>
<title>Eclipse RCP Browser Example</title>
<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
</head>
<body lang="EN-US">
<h2>Eclipse RCP Browser Example</h2>
 
<p>Last updated January 11, 2004</p>	

<h3>Description</h3>
<p>This is an example of a simple Eclipse Rich Client Platform (RCP) application.
It is a bare bones web browser, using the SWT Browser control.
</p>
<p>
The code is in package <code>org.eclipse.ui.examples.browser</code>, and consists
of an application class (<code>BrowserApp</code>), a workbench advisor for 
configuring the workbench (<code>BrowserAdvisor</code>), and a single perspective 
(<code>BrowserPerspectiveFactory</code>) containing a single view (BrowserView).
</p>
<p>
The application defines several built-in actions in the menu and toolbar that are
typical for web browsers (Back, Forward, Stop, Refresh).  These are added in 
<code>BrowserActionBuilder</code> when a new window is opened (see 
<code>BrowserAdvisor.fillActionBars(...)</code>).  These actions are defined as 
retargetable actions, for which the view registers handling actions.
</p>
<p>
The view consists of an address bar (a <code>Label</code> and a <code>Text</code>
control) and the <code>Browser</code> control.  To handle status and progress
events, it simply passes on the relevant events from the <code>Browser</code> 
control to the Workbench status line.

<h3>Running the example</h3>
To run the RCP Browser example:
<ol>
<li>Load project org.eclipse.ui.examples.rcp.browser
from the Eclipse repository into a self-hosting workspace.</li>
<li>Create a new "Run-time workbench" launch configuration called "Browser Example".</li>
<li>Add "-application org.eclipse.ui.examples.rcp.browser.app" to the Program
  Arguments field of the config.</li>
<li>On the "Plug-ins and Fragments" tab, configure it to include only the 
  following plug-ins:
  <ul>
  <li>org.eclipse.jface</li>
  <li>org.eclipse.ui</li>
  <li>org.eclipse.ui.examples.rcp.browser</li>
  <li>org.eclipse.ui.workbench</li>
  <li>org.eclipse.core.runtime</li>
  <li>org.eclipse.core.runtime.compatibility</li>
  <li>org.eclipse.help</li>
  <li>org.eclipse.osgi</li>
  <li>org.eclipse.osgi.services</li>
  <li>org.eclipse.osgi.util</li>
  <li>org.eclipse.platform</li>
  <li>org.eclipse.swt</li>
  <li>org.eclipse.swt.&lt;os&gt; (e.g. swt.win32)</li>
  <li>org.eclipse.update.configurator</li>
  </ul>
</li>
<li>Run or debug the launch config.</li>
</body>
</html>