JAL-1551 javadoc for mapUtils
[jalview.git] / src / jalview / io / cache / JvCacheableInputBox.java
index 9ec3a9f..e4e2d99 100644 (file)
@@ -87,15 +87,26 @@ public class JvCacheableInputBox<E>
   }
 
   /**
-   * Constructor
+   * 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)
+  public JvCacheableInputBox(String newCacheKey, int length)
   {
     // super();
     cacheKey = newCacheKey;
     prototypeDisplayValue = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
+    if (length > 0)
+    {
+      StringBuilder sb = new StringBuilder();
+      for (int i = 0; i < length; i++)
+      {
+        sb.append("X");
+      }
+      setPrototypeDisplayValue(sb.toString());
+    }
     boolean useTextField = Platform.isJS();
     // BH 2019.03 only switch for JavaScript here
     // SwingJS TODO implement editable combo box
@@ -134,10 +145,10 @@ public class JvCacheableInputBox<E>
         }
       });
       comboBox.setPrototypeDisplayValue(prototypeDisplayValue);
+      initCachePopupMenu();
+      initCache(newCacheKey);
+      updateCache();
     }
-    initCachePopupMenu();
-    initCache(newCacheKey);
-    updateCache();
   }
 
   /**
@@ -193,7 +204,7 @@ public class JvCacheableInputBox<E>
       @Override
       public void actionPerformed(ActionEvent e)
       {
-        // System.out.println(">>>>> Clear cache items");
+        // jalview.bin.Console.outPrintln(">>>>> Clear cache items");
         setSelectedItem("");
         appCache.deleteCacheItems(cacheKey);
         updateCache();