updating solutions
diff --git a/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_II/Application.java b/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_II/Application.java
index 44e4c62..720fffc 100644
--- a/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_II/Application.java
+++ b/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_II/Application.java
@@ -1,3 +1,13 @@
+/*******************************************************************************
+ * Copyright (c) 2007 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ *******************************************************************************/
 package org.eclipse.browser.application;
 
 import org.eclipse.equinox.app.IApplication;
diff --git a/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_III/browser.product b/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_III/browser.product
new file mode 100644
index 0000000..5970100
--- /dev/null
+++ b/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_III/browser.product
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?pde version="3.1"?>
+
+<product name="Eclipse Broswer Product" id="org.eclipse.browser.product" application="org.eclipse.browser.application" useFeatures="false">
+
+   <aboutInfo>
+      <image path="/org.eclipse.browser/branding/world_about.gif"/>
+      <text>
+         This is a bluct about my Eclipse Browser Product
+      </text>
+   </aboutInfo>
+
+   <configIni use="default"/>
+
+   <launcherArgs>
+      <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts</vmArgsMac>
+   </launcherArgs>
+
+   <windowImages i16="/org.eclipse.browser/branding/world_16-16_windows.gif" i32="/org.eclipse.browser/branding/world_32-32_windows.gif"/>
+
+   <launcher name="browser">
+      <solaris/>
+      <win useIco="true">
+         <ico path="/org.eclipse.browser/branding/world_launcher.ico"/>
+         <bmp/>
+      </win>
+   </launcher>
+
+   <vm>
+   </vm>
+
+   <plugins>
+      <plugin id="com.ibm.icu"/>
+      <plugin id="org.eclipse.browser"/>
+      <plugin id="org.eclipse.browser.nl1" fragment="true"/>
+      <plugin id="org.eclipse.core.commands"/>
+      <plugin id="org.eclipse.core.contenttype"/>
+      <plugin id="org.eclipse.core.databinding"/>
+      <plugin id="org.eclipse.core.expressions"/>
+      <plugin id="org.eclipse.core.jobs"/>
+      <plugin id="org.eclipse.core.runtime"/>
+      <plugin id="org.eclipse.core.runtime.compatibility.registry" fragment="true"/>
+      <plugin id="org.eclipse.equinox.app"/>
+      <plugin id="org.eclipse.equinox.common"/>
+      <plugin id="org.eclipse.equinox.preferences"/>
+      <plugin id="org.eclipse.equinox.registry"/>
+      <plugin id="org.eclipse.help"/>
+      <plugin id="org.eclipse.jface"/>
+      <plugin id="org.eclipse.jface.databinding"/>
+      <plugin id="org.eclipse.osgi"/>
+      <plugin id="org.eclipse.swt"/>
+      <plugin id="org.eclipse.swt.gtk.linux.x86" fragment="true"/>
+      <plugin id="org.eclipse.swt.win32.win32.x86" fragment="true"/>
+      <plugin id="org.eclipse.ui"/>
+      <plugin id="org.eclipse.ui.forms"/>
+      <plugin id="org.eclipse.ui.workbench"/>
+   </plugins>
+
+</product>
diff --git a/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_III/org/eclipse/browser/application/BrowserActionBarAdvisor.java b/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_III/org/eclipse/browser/application/BrowserActionBarAdvisor.java
new file mode 100644
index 0000000..38a906f
--- /dev/null
+++ b/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_III/org/eclipse/browser/application/BrowserActionBarAdvisor.java
@@ -0,0 +1,68 @@
+/*******************************************************************************
+ * Copyright (c) 2007 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.browser.application;
+
+import org.eclipse.jface.action.IMenuManager;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.ui.IWorkbenchActionConstants;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.actions.ActionFactory;
+import org.eclipse.ui.actions.ActionFactory.IWorkbenchAction;
+import org.eclipse.ui.application.ActionBarAdvisor;
+import org.eclipse.ui.application.IActionBarConfigurer;
+
+/**
+ * An action bar advisor is responsible for creating, adding, and disposing of
+ * the actions added to a workbench window. Each window will be populated with
+ * new actions.
+ */
+public class BrowserActionBarAdvisor extends ActionBarAdvisor {
+
+	// Actions - important to allocate these only in makeActions, and then use
+	// them
+	// in the fill methods. This ensures that the actions aren't recreated
+	// when fillActionBars is called with FILL_PROXY.
+	private IWorkbenchAction exitAction;
+	private IWorkbenchAction aboutAction;
+
+	public BrowserActionBarAdvisor(IActionBarConfigurer configurer) {
+		super(configurer);
+	}
+
+	protected void makeActions(final IWorkbenchWindow window) {
+		// Creates the actions and registers them.
+		// Registering is needed to ensure that key bindings work.
+		// Registering also provides automatic disposal of the actions when
+		// the window is closed.
+
+		exitAction = ActionFactory.QUIT.create(window);
+		register(exitAction);
+
+		aboutAction = ActionFactory.ABOUT.create(window);
+		register(aboutAction);
+	}
+
+	protected void fillMenuBar(IMenuManager menuBar) {
+		MenuManager fileMenu = new MenuManager(Messages.getString("BrowserActionBarAdvisor.file"), //$NON-NLS-1$
+				IWorkbenchActionConstants.M_FILE);
+		MenuManager helpMenu = new MenuManager(Messages.getString("BrowserActionBarAdvisor.help"), //$NON-NLS-1$
+				IWorkbenchActionConstants.M_HELP);
+
+		menuBar.add(fileMenu);
+		menuBar.add(helpMenu);
+
+		// Add Exit action to 'File' menu
+		fileMenu.add(exitAction);
+		// Add 'About' action to 'Help' menu
+		helpMenu.add(aboutAction);
+	}
+
+}
diff --git a/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_III/org/eclipse/browser/application/Messages.java b/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_III/org/eclipse/browser/application/Messages.java
new file mode 100644
index 0000000..e25229f
--- /dev/null
+++ b/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_III/org/eclipse/browser/application/Messages.java
@@ -0,0 +1,22 @@
+package org.eclipse.browser.application;
+
+import java.util.MissingResourceException;
+import java.util.ResourceBundle;
+
+public class Messages {
+	private static final String BUNDLE_NAME = "org.eclipse.browser.application.messages"; //$NON-NLS-1$
+
+	private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle
+			.getBundle(BUNDLE_NAME);
+
+	private Messages() {
+	}
+
+	public static String getString(String key) {
+		try {
+			return RESOURCE_BUNDLE.getString(key);
+		} catch (MissingResourceException e) {
+			return '!' + key + '!';
+		}
+	}
+}
diff --git a/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_III/org/eclipse/browser/application/messages.properties b/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_III/org/eclipse/browser/application/messages.properties
new file mode 100644
index 0000000..683e64b
--- /dev/null
+++ b/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_III/org/eclipse/browser/application/messages.properties
@@ -0,0 +1,2 @@
+BrowserActionBarAdvisor.file=&File
+BrowserActionBarAdvisor.help=&Help
diff --git a/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_III/plugin.properties b/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_III/plugin.properties
new file mode 100644
index 0000000..a928d29
--- /dev/null
+++ b/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_III/plugin.properties
@@ -0,0 +1,23 @@
+###############################################################################
+# Copyright (c) 2006, 2007 IBM Corporation and others.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+#     IBM Corporation - initial API and implementation
+###############################################################################
+bundle.name = Browser Plug-in
+category.name.browser = EclipseCon
+view.name = Eclipse Browser
+perspective.name = Main Perspective
+link.object.description.eclipse.downloads = Web site for downloading Eclipse distributions, SDKs and bundles
+link.object.name.eclipse.downloads = Eclipse Downloads
+link.object.description.eclipse.bugs = Web site for managing Eclipse project bug reports
+link.object.name.eclipse.bugs = Eclipse Bugs
+link.object.description.eclipsepedia = The Eclipse.org Wiki
+link.object.name.eclipsepedia = Eclipsepedia
+usefulLink.extPoint = Useful Links
+view.name.0 = Eclipse Browser
+product.name.0 = Eclipse Broswer Product
\ No newline at end of file
diff --git a/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_III/plugin.xml b/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_III/plugin.xml
new file mode 100644
index 0000000..1f84d29
--- /dev/null
+++ b/presentations/eclipse-con/2008/plugins/org.eclipse.browser/solutions/Part_III/plugin.xml
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.2"?>
+<plugin>
+   <extension-point id="usefulLinks" name="%usefulLink.extPoint" schema="schema/usefulLinks.exsd"/>
+   <extension
+         point="org.eclipse.browser.usefulLinks">
+      <linkObject
+            link="http://www.eclipse.org/downloads/"
+            name="%link.object.name.eclipse.downloads"
+            description="%link.object.description.eclipse.downloads">
+      </linkObject>
+      <linkObject
+            link="https://bugs.eclipse.org/bugs/"
+            name="%link.object.name.eclipse.bugs"
+            description="%link.object.description.eclipse.bugs">
+      </linkObject>
+      <linkObject
+            link="http://wiki.eclipse.org/index.php/Main_Page"
+            name="%link.object.name.eclipsepedia"
+            description="%link.object.description.eclipsepedia">
+      </linkObject>         
+   </extension>
+   <extension
+         point="org.eclipse.ui.perspectives">
+      <perspective
+            class="org.eclipse.browser.application.Perspective"
+            icon="$nl$/icons/eclipse_icon.gif"
+            id="org.eclipse.browser.perspective"
+            name="%perspective.name">
+      </perspective>
+   </extension>
+   <extension
+         point="org.eclipse.ui.views">
+      <view
+            class="org.eclipse.browser.view.ui.EclipseBrowserView"
+            icon="$nl$/icons/eclipse_icon.gif"
+            id="org.eclipse.browser.view"
+            name="%view.name.0">
+      </view>
+   </extension>
+   <extension
+         id="application"
+         point="org.eclipse.core.runtime.applications">
+      <application
+            cardinality="singleton-global"
+            thread="main"
+            visible="true">
+         <run
+               class="org.eclipse.browser.application.Application">
+         </run>
+      </application>
+   </extension>
+   <extension
+         id="product"
+         point="org.eclipse.core.runtime.products">
+      <product
+            application="org.eclipse.browser.application"
+            name="%product.name.0">
+         <property
+               name="appName"
+               value="Eclipse Broswer Product">
+         </property>
+         <property
+               name="aboutImage"
+               value="branding/world_about.gif">
+         </property>
+         <property
+               name="aboutText"
+               value="This is a bluct about my Eclipse Browser Product">
+         </property>
+         <property
+               name="windowImages"
+               value="branding/world_16-16_windows.gif,branding/world_32-32_windows.gif">
+         </property>
+      </product>
+   </extension>
+ 
+</plugin>