1 /************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 11 * OpenOffice.org is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU Lesser General Public License version 3 13 * only, as published by the Free Software Foundation. 14 * 15 * OpenOffice.org is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU Lesser General Public License version 3 for more details 19 * (a copy is included in the LICENSE file that accompanied this code). 20 * 21 * You should have received a copy of the GNU Lesser General Public License 22 * version 3 along with OpenOffice.org. If not, see 23 * <http://www.openoffice.org/license.html> 24 * for a copy of the LGPLv3 License. 25 * 26 ************************************************************************/ 27 28 package convwatch; 29 30 public class TriState 31 { 32 public static final TriState TRUE = new TriState(1); 33 public static final TriState FALSE = new TriState(0); 34 public static final TriState UNSET = new TriState(-1); 35 36 int m_nValue; 37 38 /** 39 Allocates a <code>TriState</code> object representing the 40 <code>value</code> argument. 41 42 @param value the value of the <code>TriState</code>. 43 */ 44 public TriState(int value) 45 { 46 m_nValue = value; 47 } 48 49 /** 50 Returns the value of this TriState object as an int 51 * @return the primitive <code>int</code> value of this object. 52 */ 53 public int intValue() 54 { 55 return m_nValue; 56 } 57 /** 58 Returns <code>true</code> if and only if the argument is not 59 <code>null</code> and is a <code>TriState</code> object that 60 contains the same <code>int</code> value as this object. 61 62 @param obj the object to compare with. 63 @return <code>true</code> if the objects are the same; 64 <code>false</code> otherwise. 65 */ 66 67 public boolean equals(Object obj) 68 { 69 if ((obj != null) && 70 (obj instanceof TriState)) 71 { 72 return m_nValue == ((TriState)obj).intValue(); 73 } 74 return false; 75 } 76 } 77