merge the formfield patch from ooo-build
[ooovba.git] / odk / examples / DevelopersGuide / Forms / TextValidator.java
blob65099c113e816f5ca544217a0281edae9da586f4
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: TextValidator.java,v $
10 * $Revision: 1.4 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 import com.sun.star.form.binding.*;
33 /**
35 * @author fs@openoffice.org
37 public class TextValidator extends ControlValidator
40 /** Creates a new instance of NumericValidator */
41 public TextValidator( )
45 public String explainInvalid( Object Value )
47 try
49 String value = (String)Value;
50 if ( containsZs( value ) )
51 return "No Z's allowed here";
52 if ( !isProperChunks( value ) )
53 return "Need 3 * n characters";
55 catch( java.lang.Exception e )
57 return "ooops. Unknown error";
59 return "";
62 public boolean isValid( Object Value )
64 try
66 String value = (String)Value;
67 if ( containsZs( value ) )
68 return false;
69 if ( !isProperChunks( value ) )
70 return false;
71 return true;
73 catch( java.lang.Exception e )
76 return false;
79 private boolean isProperChunks( String value )
81 return ( value.length() % 3 ) == 0;
84 private boolean containsZs( String value )
86 if ( ( value.indexOf( 'Z' ) != -1 )
87 || ( value.indexOf( 'z' ) != -1 )
89 return true;
90 return false;