From 21827c0d617758c91f62c67064a3ea23ad7f15d1 Mon Sep 17 00:00:00 2001 From: amwaterhouse Date: Fri, 12 May 2006 10:55:27 +0000 Subject: [PATCH] returns to zero degrees when stopped --- src/jalview/gui/WebserviceInfo.java | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/src/jalview/gui/WebserviceInfo.java b/src/jalview/gui/WebserviceInfo.java index 479cfc9..7c5c5e3 100755 --- a/src/jalview/gui/WebserviceInfo.java +++ b/src/jalview/gui/WebserviceInfo.java @@ -239,6 +239,7 @@ public class WebserviceInfo extends GWebserviceInfo public void run() { startTime = System.currentTimeMillis(); + Graphics2D g = null; while (currentStatus < STATE_STOPPED_OK) { @@ -246,7 +247,8 @@ public class WebserviceInfo extends GWebserviceInfo { Thread.sleep(50); - int units = (int) ((System.currentTimeMillis() - startTime) / 10f); + int units = (int) ( (System.currentTimeMillis() - startTime) / + 10f); angle += units; angle %= 360; startTime = System.currentTimeMillis(); @@ -255,20 +257,13 @@ public class WebserviceInfo extends GWebserviceInfo || offscreen.getHeight(this) != getHeight()) { offscreen = new BufferedImage(getWidth(), getHeight(), - BufferedImage.TYPE_INT_RGB); + BufferedImage.TYPE_INT_ARGB); + g = (Graphics2D) offscreen.getGraphics(); } - Graphics2D g = (Graphics2D) offscreen.getGraphics(); g.setColor(Color.white); g.fillRect(0, 0, getWidth(), getHeight()); - if (image != null) - { - g.rotate(Math.toRadians(angle), 28, 28); - g.drawImage(image, 10, 10, this); - g.rotate( -Math.toRadians(angle), 28, 28); - } - g.setFont(new Font("Arial", Font.BOLD, 12)); g.setColor(Color.black); @@ -307,6 +302,18 @@ public class WebserviceInfo extends GWebserviceInfo break; } + + if (currentStatus >= STATE_STOPPED_OK) + angle = 0; + + if (image != null) + { + g.rotate(Math.toRadians(angle), 28, 28); + g.drawImage(image, 10, 10, this); + g.rotate( -Math.toRadians(angle), 28, 28); + } + + repaint(); } catch (Exception ex) @@ -314,7 +321,6 @@ public class WebserviceInfo extends GWebserviceInfo } } - angle = 0; cancel.setEnabled(false); } -- 1.7.10.2