JAL-3490 revised layout and search algorithm (more tests to be added)
[jalview.git] / src / jalview / io / cache / JvCacheableInputBox.java
index beef3e7..71e7c62 100644 (file)
@@ -25,8 +25,8 @@ import jalview.util.MessageManager;
 
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
+import java.awt.event.KeyAdapter;
 import java.awt.event.KeyEvent;
-import java.awt.event.KeyListener;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collections;
@@ -64,12 +64,19 @@ public class JvCacheableInputBox<E> extends JComboBox<String>
     return enterWasPressed;
   }
 
-  public JvCacheableInputBox(String newCacheKey)
+  /**
+   * Constructor given the key to cached values, and the (approximate) length in
+   * characters of the input field
+   * 
+   * @param newCacheKey
+   * @param length
+   */
+  public JvCacheableInputBox(String newCacheKey, int length)
   {
     super();
     this.cacheKey = newCacheKey;
     setEditable(true);
-    addKeyListener(new KeyListener()
+    addKeyListener(new KeyAdapter()
     {
 
       @Override
@@ -82,23 +89,16 @@ public class JvCacheableInputBox<E> extends JComboBox<String>
         }
         // let event bubble up
       }
-
-      @Override
-      public void keyReleased(KeyEvent e)
-      {
-        // TODO Auto-generated method stub
-
-      }
-
-      @Override
-      public void keyPressed(KeyEvent e)
+    });
+    if (length > 0)
+    {
+      StringBuilder sb = new StringBuilder();
+      for (int i = 0; i < length; i++)
       {
-        // TODO Auto-generated method stub
-
+        sb.append("X");
       }
-    });
-    setPrototypeDisplayValue(
-            "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX");
+      setPrototypeDisplayValue(sb.toString());
+    }
     appCache = AppCache.getInstance();
     initCachePopupMenu();
     initCache(newCacheKey);