Accelerator on menu takes care of actionkey
[jalview.git] / src / jalview / gui / WebserviceInfo.java
index 26aa067..a7d7fa1 100755 (executable)
@@ -11,12 +11,22 @@ public class WebserviceInfo extends GWebserviceInfo
   public static final int STATE_QUEUING = 0;\r
   public static final int STATE_RUNNING = 1;\r
   public static final int STATE_STOPPED_OK = 2;\r
-  public static final int STATE_STOPPED_ERROR = 3;\r
+  public static final int STATE_CANCELLED_OK = 3;\r
+  public static final int STATE_STOPPED_ERROR = 4;\r
   int currentStatus = STATE_QUEUING;\r
   Image image;\r
   int angle = 0;\r
 \r
   String title="";\r
+  jalview.ws.WSClientI thisService;\r
+  boolean serviceIsCancellable;\r
+  public jalview.ws.WSClientI getthisService() {\r
+    return thisService;\r
+  }\r
+  public void setthisService(jalview.ws.WSClientI newservice) {\r
+    thisService = newservice;\r
+    serviceIsCancellable = newservice.isCancellable();\r
+  }\r
 \r
   public WebserviceInfo(String title, String info)\r
   {\r
@@ -79,10 +89,13 @@ public class WebserviceInfo extends GWebserviceInfo
 \r
   protected void cancel_actionPerformed(ActionEvent e)\r
   {\r
-    JOptionPane.showInternalMessageDialog(Desktop.desktop,\r
-                                          "Cancel not implemented yet!!" ,\r
-                                          "Cancel job"\r
-                                          ,JOptionPane.WARNING_MESSAGE);\r
+    if (!serviceIsCancellable)\r
+      JOptionPane.showInternalMessageDialog(Desktop.desktop,\r
+                                            "This job cannot be cancelled." ,\r
+                                            "Cancel job"\r
+                                            ,JOptionPane.WARNING_MESSAGE);\r
+    else\r
+      thisService.cancelJob();\r
   }\r
 \r
 \r
@@ -135,6 +148,11 @@ public class WebserviceInfo extends GWebserviceInfo
         case STATE_STOPPED_OK:\r
           g.drawString(title.concat(" - complete"), 60, 30);\r
           break;\r
+\r
+        case STATE_CANCELLED_OK:\r
+          g.drawString(title.concat(" - job cancelled!"), 60, 30);\r
+          break;\r
+\r
         case STATE_STOPPED_ERROR:\r
           g.drawString(title.concat(" - error!"), 60, 30);\r
           break;\r