dead
This commit is contained in:
parent
59cee800bc
commit
397c0d1ea0
|
@ -1,69 +0,0 @@
|
||||||
package com.rusefi.ts_plugin;
|
|
||||||
|
|
||||||
import javax.swing.*;
|
|
||||||
import javax.swing.text.*;
|
|
||||||
|
|
||||||
public class IntegerDocumentFilter extends DocumentFilter {
|
|
||||||
public static void install(JTextField jTextField) {
|
|
||||||
PlainDocument doc = (PlainDocument) jTextField.getDocument();
|
|
||||||
doc.setDocumentFilter(new IntegerDocumentFilter());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void insertString(FilterBypass fb, int offset, String string,
|
|
||||||
AttributeSet attr) throws BadLocationException {
|
|
||||||
|
|
||||||
Document doc = fb.getDocument();
|
|
||||||
StringBuilder sb = new StringBuilder();
|
|
||||||
sb.append(doc.getText(0, doc.getLength()));
|
|
||||||
sb.insert(offset, string);
|
|
||||||
|
|
||||||
if (test(sb.toString())) {
|
|
||||||
super.insertString(fb, offset, string, attr);
|
|
||||||
} else {
|
|
||||||
// warn the user and don't allow the insert
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private boolean test(String text) {
|
|
||||||
try {
|
|
||||||
Integer.parseInt(text);
|
|
||||||
return true;
|
|
||||||
} catch (NumberFormatException e) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void replace(FilterBypass fb, int offset, int length, String text,
|
|
||||||
AttributeSet attrs) throws BadLocationException {
|
|
||||||
|
|
||||||
Document doc = fb.getDocument();
|
|
||||||
StringBuilder sb = new StringBuilder();
|
|
||||||
sb.append(doc.getText(0, doc.getLength()));
|
|
||||||
sb.replace(offset, offset + length, text);
|
|
||||||
|
|
||||||
if (test(sb.toString())) {
|
|
||||||
super.replace(fb, offset, length, text, attrs);
|
|
||||||
} else {
|
|
||||||
// warn the user and don't allow the insert
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void remove(FilterBypass fb, int offset, int length)
|
|
||||||
throws BadLocationException {
|
|
||||||
Document doc = fb.getDocument();
|
|
||||||
StringBuilder sb = new StringBuilder();
|
|
||||||
sb.append(doc.getText(0, doc.getLength()));
|
|
||||||
sb.delete(offset, offset + length);
|
|
||||||
|
|
||||||
if (test(sb.toString())) {
|
|
||||||
super.remove(fb, offset, length);
|
|
||||||
} else {
|
|
||||||
// warn the user and don't allow the insert
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in New Issue