]> gitweb.fperrin.net Git - GpsPrune.git/blobdiff - tim/prune/gui/WholeNumberField.java
Version 17, September 2014
[GpsPrune.git] / tim / prune / gui / WholeNumberField.java
index dcf6740d960c21d15421cae3fabe1088556f35ba..b12d299b626c960101a8aed1f917d4ead1da918e 100644 (file)
@@ -1,6 +1,8 @@
 package tim.prune.gui;
 
 import javax.swing.JTextField;
+import javax.swing.event.DocumentEvent;
+import javax.swing.event.DocumentListener;
 import javax.swing.text.AttributeSet;
 import javax.swing.text.BadLocationException;
 import javax.swing.text.PlainDocument;
@@ -13,7 +15,7 @@ public class WholeNumberField extends JTextField
        /**
         * Inner class to act as document for validation
         */
-       protected class WholeNumberDocument extends PlainDocument
+       protected static class WholeNumberDocument extends PlainDocument
        {
                /** Num digits to allow */
                private int _maxDigits = 0;
@@ -57,8 +59,13 @@ public class WholeNumberField extends JTextField
         */
        public WholeNumberField(int inMaxDigits)
        {
-               super("0");
+               super(inMaxDigits);
                setDocument(new WholeNumberDocument(inMaxDigits));
+               getDocument().addDocumentListener(new DocumentListener() {
+                       public void removeUpdate(DocumentEvent arg0) {fireActionPerformed();}
+                       public void insertUpdate(DocumentEvent arg0) {fireActionPerformed();}
+                       public void changedUpdate(DocumentEvent arg0) {fireActionPerformed();}
+               });
        }
 
        /**
@@ -69,6 +76,14 @@ public class WholeNumberField extends JTextField
                return parseValue(getText());
        }
 
+       /**
+        * @param inValue value to set
+        */
+       public void setValue(int inValue)
+       {
+               setText("" + inValue);
+       }
+
        /**
         * @param inText text to parse
         * @return value as integer