JAL-2808 update spike to latest (filter range tooltip, Present condition)
[jalview.git] / src / jalview / util / matcher / Condition.java
index 4d14063..3401ae8 100644 (file)
@@ -11,17 +11,21 @@ import java.util.Map;
  */
 public enum Condition
 {
-  Contains(false), NotContains(false), Matches(false), NotMatches(false),
-  Present(false), NotPresent(false),
-  EQ(true), NE(true), LT(true), LE(true), GT(true), GE(true);
+  Contains(false, true), NotContains(false, true), Matches(false, true),
+  NotMatches(false, true), Present(false, false), NotPresent(false, false),
+  EQ(true, true), NE(true, true), LT(true, true), LE(true, true),
+  GT(true, true), GE(true, true);
 
   private static Map<Condition, String> displayNames = new HashMap<>();
   
   private boolean numeric;
 
-  Condition(boolean isNumeric)
+  private boolean needsAPattern;
+
+  Condition(boolean isNumeric, boolean needsPattern)
   {
     numeric = isNumeric;
+    needsAPattern = needsPattern;
   }
 
   /**
@@ -36,6 +40,17 @@ public enum Condition
   }
 
   /**
+   * Answers true if the condition requires a pattern to compare against, else
+   * false
+   * 
+   * @return
+   */
+  public boolean needsAPattern()
+  {
+    return needsAPattern;
+  }
+
+  /**
    * Answers a display name for the match condition, suitable for showing in
    * drop-down menus. The value may be internationalized using the resource key
    * "label.matchCondition_" with the enum name appended.