JAL - 3690 AlignCalc rebuilt - FutureTask-based manager
[jalview.git] / src / jalview / workers / AlignCalcWorker.java
index 771c492..c94032f 100644 (file)
@@ -21,6 +21,7 @@
 package jalview.workers;
 
 import jalview.api.AlignCalcManagerI;
+import jalview.api.AlignCalcManagerI2;
 import jalview.api.AlignCalcWorkerI;
 import jalview.api.AlignViewportI;
 import jalview.api.AlignmentViewPanel;
@@ -43,7 +44,7 @@ public abstract class AlignCalcWorker implements AlignCalcWorkerI
    */
   protected AlignViewportI alignViewport;
 
-  protected AlignCalcManagerI calcMan;
+  protected AlignCalcManagerI2 calcMan;
 
   protected AlignmentViewPanel ap;
 
@@ -61,7 +62,8 @@ public abstract class AlignCalcWorker implements AlignCalcWorkerI
   {
     if (calcMan != null)
     {
-      calcMan.workerComplete(this);
+      calcMan.cancelWorker(this);
+      calcMan.removeWorker(this);
     }
     alignViewport = null;
     calcMan = null;
@@ -95,6 +97,7 @@ public abstract class AlignCalcWorker implements AlignCalcWorkerI
       ourAnnots.clear();
     }
   }
+
   // TODO: allow GUI to query workers associated with annotation to add items to
   // annotation label panel popup menu
 
@@ -118,8 +121,10 @@ public abstract class AlignCalcWorker implements AlignCalcWorkerI
     float max = Float.MIN_VALUE;
     float min = Float.MAX_VALUE;
     boolean set = false;
-    for (Annotation a : anns) {
-      if (a != null) {
+    for (Annotation a : anns)
+    {
+      if (a != null)
+      {
         set = true;
         float val = a.value;
         max = Math.max(max, val);
@@ -133,4 +138,8 @@ public abstract class AlignCalcWorker implements AlignCalcWorkerI
     }
   }
 
+  public AlignViewportI getAlignViewport()
+  {
+    return alignViewport;
+  }
 }