X-Git-Url: http://git.phpeclipse.com diff --git a/net.sourceforge.phpeclipse.webbrowser/src/org/eclipse/webbrowser/internal/BusyIndicator.java b/net.sourceforge.phpeclipse.webbrowser/src/org/eclipse/webbrowser/internal/BusyIndicator.java deleted file mode 100644 index 4f984bc..0000000 --- a/net.sourceforge.phpeclipse.webbrowser/src/org/eclipse/webbrowser/internal/BusyIndicator.java +++ /dev/null @@ -1,157 +0,0 @@ -/** - * Copyright (c) 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 - Initial API and implementation - */ -package org.eclipse.webbrowser.internal; - -import org.eclipse.swt.widgets.*; -import org.eclipse.swt.events.*; -import org.eclipse.swt.graphics.*; -/** - * An animated image to show busy status of the Web browser. - */ -public class BusyIndicator extends Canvas { - protected Image[] images; - protected Image image; - - protected Thread busyThread; - protected boolean stop; - - /** - * BusyWidget constructor comment. - * @param parent org.eclipse.swt.widgets.Composite - * @param style int - */ - public BusyIndicator(Composite parent, int style) { - super(parent, style); - - images = ImageResource.getBusyImages(); - - addPaintListener(new PaintListener() { - public void paintControl(PaintEvent event) { - onPaint(event); - } - }); - - image = images[0]; - } - - public Point computeSize(int wHint, int hHint, boolean changed) { - return new Point(25, 25); - } - - /** - * Creates a thread to animate the image. - */ - protected synchronized void createBusyThread() { - if (busyThread != null) - return; - - stop = false; - busyThread = new Thread() { - protected int count; - public void run() { - try { - count = 1; - while (!stop) { - Display.getDefault().syncExec(new Runnable() { - public void run() { - if (!stop) { - if (count < 13) - setImage(images[count]); - count++; - if (count > 12) - count = 1; - } - } - }); - try { - sleep(125); - } catch (Exception e) { } - } - if (busyThread == null) - Display.getDefault().syncExec(new Thread() { - public void run() { - setImage(images[0]); - } - }); - } catch (Exception e) { - Trace.trace(Trace.WARNING, "Busy error", e); - } - } - }; - - busyThread.setPriority(Thread.NORM_PRIORITY + 2); - busyThread.setDaemon(true); - busyThread.start(); - } - - public void dispose() { - stop = true; - busyThread = null; - super.dispose(); - } - - /** - * Return the image or null. - */ - public Image getImage() { - return image; - } - - /** - * Returns true if it is currently busy. - * - * @return boolean - */ - public boolean isBusy() { - return (busyThread != null); - } - - /* - * Process the paint event - */ - protected void onPaint(PaintEvent event) { - Rectangle rect = getClientArea(); - if (rect.width == 0 || rect.height == 0) - return; - - GC gc = event.gc; - if (image != null) - gc.drawImage(image, 2, 2); - } - - /** - * Sets the indicators busy count up (true) or down (false) one. - * - * @param busy boolean - */ - public synchronized void setBusy(boolean busy) { - if (busy) { - if (busyThread == null) - createBusyThread(); - } else { - if (busyThread != null) { - stop = true; - busyThread = null; - } - } - } - - /** - * Set the image. - * The value null clears it. - */ - public void setImage(Image image) { - if (image != this.image && !isDisposed()) { - this.image = image; - redraw(); - } - } -} \ No newline at end of file