returns to zero degrees when stopped
authoramwaterhouse <Andrew Waterhouse>
Fri, 12 May 2006 10:55:27 +0000 (10:55 +0000)
committeramwaterhouse <Andrew Waterhouse>
Fri, 12 May 2006 10:55:27 +0000 (10:55 +0000)
src/jalview/gui/WebserviceInfo.java

index 479cfc9..7c5c5e3 100755 (executable)
@@ -239,6 +239,7 @@ public class WebserviceInfo extends GWebserviceInfo
         public void run()\r
         {\r
             startTime = System.currentTimeMillis();\r
+            Graphics2D g = null;\r
 \r
             while (currentStatus < STATE_STOPPED_OK)\r
             {\r
@@ -246,7 +247,8 @@ public class WebserviceInfo extends GWebserviceInfo
                 {\r
                     Thread.sleep(50);\r
 \r
-                    int units = (int) ((System.currentTimeMillis() - startTime) / 10f);\r
+                    int units = (int) ( (System.currentTimeMillis() - startTime) /\r
+                                       10f);\r
                     angle += units;\r
                     angle %= 360;\r
                     startTime = System.currentTimeMillis();\r
@@ -255,20 +257,13 @@ public class WebserviceInfo extends GWebserviceInfo
                         || offscreen.getHeight(this) != getHeight())\r
                     {\r
                       offscreen = new BufferedImage(getWidth(), getHeight(),\r
-                                                    BufferedImage.TYPE_INT_RGB);\r
+                                                    BufferedImage.TYPE_INT_ARGB);\r
+                      g = (Graphics2D) offscreen.getGraphics();\r
                     }\r
 \r
-                    Graphics2D g = (Graphics2D) offscreen.getGraphics();\r
                     g.setColor(Color.white);\r
                     g.fillRect(0, 0, getWidth(), getHeight());\r
 \r
-                    if (image != null)\r
-                    {\r
-                      g.rotate(Math.toRadians(angle), 28, 28);\r
-                      g.drawImage(image, 10, 10, this);\r
-                      g.rotate( -Math.toRadians(angle), 28, 28);\r
-                    }\r
-\r
                     g.setFont(new Font("Arial", Font.BOLD, 12));\r
                     g.setColor(Color.black);\r
 \r
@@ -307,6 +302,18 @@ public class WebserviceInfo extends GWebserviceInfo
                         break;\r
                     }\r
 \r
+\r
+                    if (currentStatus >= STATE_STOPPED_OK)\r
+                      angle = 0;\r
+\r
+                    if (image != null)\r
+                    {\r
+                      g.rotate(Math.toRadians(angle), 28, 28);\r
+                      g.drawImage(image, 10, 10, this);\r
+                      g.rotate( -Math.toRadians(angle), 28, 28);\r
+                    }\r
+\r
+\r
                     repaint();\r
                 }\r
                 catch (Exception ex)\r
@@ -314,7 +321,6 @@ public class WebserviceInfo extends GWebserviceInfo
                 }\r
             }\r
 \r
-            angle = 0;\r
             cancel.setEnabled(false);\r
         }\r
 \r