1 package org.wcb.autohome.util; 2 3 import javax.swing.text.PlainDocument; 4 import javax.swing.text.AttributeSet; 5 import javax.swing.text.BadLocationException; 6 7 /*** 8 /** 9 * Copyright (C) 1999 Walter Bogaardt 10 * 11 * This library is free software; you can redistribute it and/or 12 * modify it under the terms of the GNU Lesser General Public 13 * License as published by the Free Software Foundation; either 14 * version 2 of the License, or (at your option) any later version. 15 * 16 * This library is distributed in the hope that it will be useful, 17 * but WITHOUT ANY WARRANTY; without even the implied warranty of 18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 19 * Lesser General Public License for more details. 20 * 21 * You should have received a copy of the GNU Lesser General Public 22 * License along with this library; if not, write to the Free Software 23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 24 * 25 * Project: Alice X10 Home Automation 26 * 27 * Date: Oct 9, 2003 28 * Time: 4:43:59 PM 29 * 30 * $Log: DeviceIDFieldValidator.java,v $ 31 * Revision 1.3 2003/12/30 21:20:17 wbogaardt 32 * added new file saving dialog to actually save files in .x10 extension. 33 * 34 * Revision 1.2 2003/12/22 20:51:32 wbogaardt 35 * refactored name assignments and formatted code for readability. 36 * 37 * Revision 1.1 2003/10/09 23:53:37 wbogaardt 38 * refactored class out of ModuleDetailPanel.java 39 * 40 */ 41 public class DeviceIDFieldValidator extends PlainDocument{ 42 /*** 43 * Check the entered information in the Device ID 44 * text field and ensure the first pos is a character 45 * folowed by integers. Also ensure that the first 46 * positon character is an upper case letter. 47 */ 48 public void insertString(int offset, String s, AttributeSet attributeSet) throws BadLocationException { 49 if (offset > 0) 50 { 51 try 52 { 53 Integer.parseInt(s.substring(0)); 54 } 55 catch(NumberFormatException nfe) 56 { 57 return; 58 } 59 } 60 if (offset == 0) 61 { 62 s = s.toUpperCase(); 63 } 64 super.insertString(offset, s, attributeSet); 65 } 66 } 67