1 11 package org.eclipse.ui.internal.browser; 12 13 import java.util.Hashtable ; 14 15 import org.eclipse.ui.PartInitException; 16 import org.eclipse.ui.browser.AbstractWorkbenchBrowserSupport; 17 import org.eclipse.ui.browser.IWebBrowser; 18 19 26 public class DefaultWorkbenchBrowserSupport extends 27 AbstractWorkbenchBrowserSupport { 28 private Hashtable browsers; 29 30 33 public DefaultWorkbenchBrowserSupport() { 34 browsers = new Hashtable (); 35 } 36 37 void registerBrowser(IWebBrowser browser) { 38 browsers.put(browser.getId(), browser); 39 } 40 41 void unregisterBrowser(IWebBrowser browser) { 42 browsers.remove(browser.getId()); 43 } 44 45 IWebBrowser findBrowser(String id) { 46 return (IWebBrowser) browsers.get(id); 47 } 48 49 protected IWebBrowser doCreateBrowser(int style, String browserId, 50 String name, String tooltip) throws PartInitException { 51 return new DefaultWebBrowser(this, browserId); 52 } 53 54 60 public IWebBrowser createBrowser(int style, String browserId, String name, 61 String tooltip) throws PartInitException { 62 IWebBrowser browser = findBrowser(browserId); 63 if (browser != null) { 64 return browser; 65 } 66 browser = doCreateBrowser(style, browserId, name, tooltip); 67 registerBrowser(browser); 68 return browser; 69 } 70 71 76 public IWebBrowser createBrowser(String browserId) throws PartInitException { 77 return createBrowser(AS_EXTERNAL, browserId, null, null); 78 } 79 } 80 | Popular Tags |