X-Git-Url: http://secure.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/views/browser/PHPBrowser.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/views/browser/PHPBrowser.java deleted file mode 100644 index 3374fed..0000000 --- a/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/views/browser/PHPBrowser.java +++ /dev/null @@ -1,358 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2000, 2003 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Common Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/cpl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package net.sourceforge.phpeclipse.views.browser; -import java.text.MessageFormat; -import java.util.MissingResourceException; -import java.util.ResourceBundle; -import org.eclipse.swt.SWT; -import org.eclipse.swt.SWTError; -import org.eclipse.swt.browser.Browser; -import org.eclipse.swt.browser.CloseWindowListener; -import org.eclipse.swt.browser.LocationEvent; -import org.eclipse.swt.browser.LocationListener; -import org.eclipse.swt.browser.OpenWindowListener; -import org.eclipse.swt.browser.ProgressEvent; -import org.eclipse.swt.browser.ProgressListener; -import org.eclipse.swt.browser.StatusTextEvent; -import org.eclipse.swt.browser.StatusTextListener; -import org.eclipse.swt.browser.TitleEvent; -import org.eclipse.swt.browser.TitleListener; -import org.eclipse.swt.browser.VisibilityWindowListener; -import org.eclipse.swt.browser.WindowEvent; -import org.eclipse.swt.graphics.Image; -import org.eclipse.swt.graphics.ImageData; -import org.eclipse.swt.graphics.Point; -import org.eclipse.swt.graphics.Rectangle; -import org.eclipse.swt.layout.FillLayout; -import org.eclipse.swt.layout.FormAttachment; -import org.eclipse.swt.layout.FormData; -import org.eclipse.swt.layout.FormLayout; -import org.eclipse.swt.widgets.Canvas; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.swt.widgets.Display; -import org.eclipse.swt.widgets.Event; -import org.eclipse.swt.widgets.Label; -import org.eclipse.swt.widgets.Listener; -import org.eclipse.swt.widgets.ProgressBar; -import org.eclipse.swt.widgets.Shell; -import org.eclipse.swt.widgets.Text; -import org.eclipse.swt.widgets.ToolBar; -import org.eclipse.swt.widgets.ToolItem; - -public class PHPBrowser { - static ResourceBundle resourceBundle = ResourceBundle - .getBundle("net.sourceforge.phpeclipse.views.browser.browser"); - int index; - boolean busy; - Image images[]; - Text location; - Browser browser; - static final String[] imageLocations = {"eclipse01.bmp", "eclipse02.bmp", - "eclipse03.bmp", "eclipse04.bmp", "eclipse05.bmp", "eclipse06.bmp", - "eclipse07.bmp", "eclipse08.bmp", "eclipse09.bmp", "eclipse10.bmp", - "eclipse11.bmp", "eclipse12.bmp",}; - static final String iconLocation = "document.gif"; - /** - * Creates an instance of a ControlExample embedded inside the supplied - * parent Composite. - * - * @param parent - * the container of the example - */ - public PHPBrowser(Composite parent) { - initResources(); - final Display display = parent.getDisplay(); - FormLayout layout = new FormLayout(); - parent.setLayout(layout); - ToolBar toolbar = new ToolBar(parent, SWT.NONE); - final ToolItem itemBack = new ToolItem(toolbar, SWT.PUSH); - itemBack.setText(getResourceString("Back")); - final ToolItem itemForward = new ToolItem(toolbar, SWT.PUSH); - itemForward.setText(getResourceString("Forward")); - final ToolItem itemStop = new ToolItem(toolbar, SWT.PUSH); - itemStop.setText(getResourceString("Stop")); - final ToolItem itemRefresh = new ToolItem(toolbar, SWT.PUSH); - itemRefresh.setText(getResourceString("Refresh")); - final ToolItem itemGo = new ToolItem(toolbar, SWT.PUSH); - itemGo.setText(getResourceString("Go")); - location = new Text(parent, SWT.BORDER); - final Canvas canvas = new Canvas(parent, SWT.NO_BACKGROUND); - final Rectangle rect = images[0].getBounds(); - canvas.addListener(SWT.Paint, new Listener() { - public void handleEvent(Event e) { - Point pt = canvas.getSize(); - e.gc.drawImage(images[index], 0, 0, rect.width, rect.height, 0, 0, - pt.x, pt.y); - } - }); - canvas.addListener(SWT.MouseDown, new Listener() { - public void handleEvent(Event e) { - browser.setUrl(getResourceString("Startup")); - } - }); - display.asyncExec(new Runnable() { - public void run() { - if (canvas.isDisposed()) - return; - if (busy) { - index++; - if (index == images.length) - index = 0; - canvas.redraw(); - } - display.timerExec(150, this); - } - }); - final Label status = new Label(parent, SWT.NONE); - final ProgressBar progressBar = new ProgressBar(parent, SWT.NONE); - FormData data = new FormData(); - data.top = new FormAttachment(0, 5); - toolbar.setLayoutData(data); - data = new FormData(); - data.left = new FormAttachment(0, 0); - data.right = new FormAttachment(100, 0); - data.top = new FormAttachment(canvas, 5, SWT.DEFAULT); - data.bottom = new FormAttachment(status, -5, SWT.DEFAULT); - try { - browser = new Browser(parent, SWT.NONE); - browser.setLayoutData(data); - } catch (SWTError e) { - /* Browser widget could not be instantiated */ - Label label = new Label(parent, SWT.CENTER | SWT.WRAP); - label.setText(getResourceString("BrowserNotCreated")); - label.setLayoutData(data); - } - data = new FormData(); - data.width = 24; - data.height = 24; - data.top = new FormAttachment(0, 5); - data.right = new FormAttachment(100, -5); - canvas.setLayoutData(data); - data = new FormData(); - data.top = new FormAttachment(toolbar, 0, SWT.TOP); - data.left = new FormAttachment(toolbar, 5, SWT.RIGHT); - data.right = new FormAttachment(canvas, -5, SWT.DEFAULT); - location.setLayoutData(data); - data = new FormData(); - data.left = new FormAttachment(0, 5); - data.right = new FormAttachment(progressBar, 0, SWT.DEFAULT); - data.bottom = new FormAttachment(100, -5); - status.setLayoutData(data); - data = new FormData(); - data.right = new FormAttachment(100, -5); - data.bottom = new FormAttachment(100, -5); - progressBar.setLayoutData(data); - if (browser != null) { - itemBack.setEnabled(browser.isBackEnabled()); - itemForward.setEnabled(browser.isForwardEnabled()); - Listener listener = new Listener() { - public void handleEvent(Event event) { - ToolItem item = (ToolItem) event.widget; - if (item == itemBack) - browser.back(); - else if (item == itemForward) - browser.forward(); - else if (item == itemStop) - browser.stop(); - else if (item == itemRefresh) - browser.refresh(); - else if (item == itemGo) - browser.setUrl(location.getText()); - } - }; - browser.addLocationListener(new LocationListener() { - public void changed(LocationEvent event) { - busy = true; - if (event.top) - location.setText(event.location); - } - public void changing(LocationEvent event) { - } - }); - browser.addProgressListener(new ProgressListener() { - public void changed(ProgressEvent event) { - if (event.total == 0) - return; - int ratio = event.current * 100 / event.total; - progressBar.setSelection(ratio); - busy = event.current != event.total; - if (!busy) { - index = 0; - canvas.redraw(); - } - } - public void completed(ProgressEvent event) { - itemBack.setEnabled(browser.isBackEnabled()); - itemForward.setEnabled(browser.isForwardEnabled()); - progressBar.setSelection(0); - busy = false; - index = 0; - canvas.redraw(); - } - }); - browser.addStatusTextListener(new StatusTextListener() { - public void changed(StatusTextEvent event) { - status.setText(event.text); - } - }); - if (parent instanceof Shell) { - final Shell shell = (Shell) parent; - browser.addTitleListener(new TitleListener() { - public void changed(TitleEvent event) { - shell.setText(event.title + " - " - + getResourceString("window.title")); - } - }); - } - itemBack.addListener(SWT.Selection, listener); - itemForward.addListener(SWT.Selection, listener); - itemStop.addListener(SWT.Selection, listener); - itemRefresh.addListener(SWT.Selection, listener); - itemGo.addListener(SWT.Selection, listener); - location.addListener(SWT.DefaultSelection, new Listener() { - public void handleEvent(Event e) { - browser.setUrl(location.getText()); - } - }); - initialize(display, browser); - browser.setUrl(getResourceString("Startup")); - } - } - /** - * Gets a string from the resource bundle. We don't want to crash because of - * a missing String. Returns the key if not found. - */ - static String getResourceString(String key) { - try { - return resourceBundle.getString(key); - } catch (MissingResourceException e) { - return key; - } catch (NullPointerException e) { - return "!" + key + "!"; - } - } - /** - * Gets a string from the resource bundle and binds it with the given - * arguments. If the key is not found, return the key. - */ - static String getResourceString(String key, Object[] args) { - try { - return MessageFormat.format(getResourceString(key), args); - } catch (MissingResourceException e) { - return key; - } catch (NullPointerException e) { - return "!" + key + "!"; - } - } - static void initialize(final Display display, Browser browser) { - browser.addOpenWindowListener(new OpenWindowListener() { - public void open(WindowEvent event) { - Shell shell = new Shell(display); - shell.setLayout(new FillLayout()); - Browser browser = new Browser(shell, SWT.NONE); - initialize(display, browser); - event.browser = browser; - } - }); - browser.addVisibilityWindowListener(new VisibilityWindowListener() { - public void hide(WindowEvent event) { - } - public void show(WindowEvent event) { - Browser browser = (Browser) event.widget; - Shell shell = browser.getShell(); - if (event.location != null) - shell.setLocation(event.location); - if (event.size != null) { - Point size = event.size; - shell.setSize(shell.computeSize(size.x, size.y)); - } - shell.open(); - } - }); - browser.addCloseWindowListener(new CloseWindowListener() { - public void close(WindowEvent event) { - Browser browser = (Browser) event.widget; - Shell shell = browser.getShell(); - shell.close(); - } - }); - } - /** - * Disposes of all resources associated with a particular instance of the - * BrowserExample. - */ - public void dispose() { - freeResources(); - } - /** - * Frees the resources - */ - void freeResources() { - if (images != null) { - for (int i = 0; i < images.length; ++i) { - final Image image = images[i]; - if (image != null) - image.dispose(); - } - images = null; - } - } - /** - * Grabs input focus. - */ - public void setFocus() { - location.setFocus(); - } - /** - * Loads the resources - */ - void initResources() { - final Class clazz = this.getClass(); - if (resourceBundle != null) { - try { - if (images == null) { - images = new Image[imageLocations.length]; - for (int i = 0; i < imageLocations.length; ++i) { - ImageData source = new ImageData(clazz - .getResourceAsStream(imageLocations[i])); - ImageData mask = source.getTransparencyMask(); - images[i] = new Image(null, source, mask); - } - } - return; - } catch (Throwable t) { - } - } - String error = (resourceBundle != null) - ? getResourceString("error.CouldNotLoadResources") - : "Unable to load resources"; - freeResources(); - throw new RuntimeException(error); - } - public static void main(String[] args) { - Display display = new Display(); - Shell shell = new Shell(display); - shell.setLayout(new FillLayout()); - shell.setText(getResourceString("window.title")); - PHPBrowser instance = new PHPBrowser(shell); - Image icon = new Image(display, PHPBrowser.class - .getResourceAsStream(iconLocation)); - shell.setImage(icon); - shell.open(); - while (!shell.isDisposed()) { - if (!display.readAndDispatch()) - display.sleep(); - } - icon.dispose(); - instance.dispose(); - display.dispose(); - } -} \ No newline at end of file