Initial version from the webtools project; sligthly modified for phpeclipse
[phpeclipse.git] / net.sourceforge.phpeclipse / src / net / sourceforge / phpeclipse / views / browser / PHPBrowser.java
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 (file)
index 3374fed..0000000
+++ /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