JAL-2629 fix incorrect hmmbuild on groups behaviour
[jalview.git] / src / jalview / gui / AlignFrame.java
index d1ebdb7..a429ece 100644 (file)
@@ -1159,6 +1159,36 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     }
     return true;
   }
+  
+  @Override
+  protected void filterByEValue_actionPerformed()
+  {
+    viewport.filterByEvalue(inputDouble("Enter E-Value Cutoff"));
+  }
+  
+  @Override
+  protected void filterByScore_actionPerformed()
+  {
+    viewport.filterByScore(inputDouble("Enter Bit Score Threshold"));
+  }
+  
+  private double inputDouble(String message)
+  {
+    String str = null;
+    Double d = null;
+    while(d == null || d <= 0)
+    {
+      str = JOptionPane.showInputDialog(this.alignPanel, message);
+      try
+      {
+        d = Double.valueOf(str);
+      }
+      catch (NumberFormatException e)
+      {
+      }
+    }
+    return d;
+  }
 
   /**
    * Checks if the alignment contains the required number of sequences.
@@ -1168,13 +1198,13 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
    */
   public boolean alignmentIsSufficient(int required)
   {
-    if (getViewport().getAlignment().getSequences().size() < required)
-    {
-      JOptionPane.showMessageDialog(this,
-              MessageManager.getString("label.not_enough_sequences"));
-      return false;
-    }
-    return true;
+      if (getViewport().getSequenceSelection().length < required)
+      {
+        JOptionPane.showMessageDialog(this,
+                MessageManager.getString("label.not_enough_sequences"));
+        return false;
+      }
+      return true;
   }
 
   /**