/* $XConsortium: SpinBox3.dat /main/5 1996/04/30 13:56:42 schuldy $ */ /* * (c) Copyright 1989, 1990, 1991, 1992, 1993 OPEN SOFTWARE FOUNDATION, INC. * ALL RIGHTS RESERVED * @OPENGROUP_COPYRIGHT@ * COPYRIGHT NOTICE * Copyright (c) 1990, 1991, 1992, 1993 Open Software Foundation, Inc. * Copyright (c) 1996, 1997, 1998, 1999, 2000 The Open Group * ALL RIGHTS RESERVED (MOTIF). See the file named COPYRIGHT.MOTIF for * the full copyright text. * * This software is subject to an open license. It may only be * used on, with or for operating systems which are themselves open * source systems. You must contact The Open Group for a license * allowing distribution and sublicensing of this software on, with, * or for operating systems which are not Open Source programs. * * See http://www.opengroup.org/openmotif/license for full * details of the license agreement. Any use, reproduction, or * distribution of the program constitutes recipient's acceptance of * this agreement. * * EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS * PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY * WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY * OR FITNESS FOR A PARTICULAR PURPOSE * * EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT * NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN * ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE * EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGES. */ /* * HISTORY */ #) A SpinBox will appear on your screen. It will have 2 children of the type specified on the command line, one of type NUMERIC, and the other of type STRING. There will be a Separator between the 2 children. #) Both arrows of the SpinBox should be sensitive. #) The two arrows should be at the leftmost edge of the SpinBox, and horizontally adjacent to each other. #) The height of the arrows should be 25 pixels. #) The visible item in the STRING child should be "February". The visible item in the NUMERIC child should be 2. #) Set the focus to the STRING child. #) Press MB1 on the right-pointing arrow. Hold it down for a few seconds. Release MB1. The value displayed in the STRING child should be incremented by 1; i.e, "March" will now be the displayed value. The valueChangedCallback should be invoked twice with the reasons XmCR_OK and XmCR_SPIN_NEXT. The modifyVerifyCallback should be invoked with the reason XmCR_SPIN_NEXT. C) #) Set the focus to the NUMERIC child. #) Click on the left-pointing arrow until the value displayed in the NUMERIC child is 3. You should not be able to decrement the value any further. The value should wrap to 15 after 3. #) Click on the right-pointing arrow until the value displayed in the NUMERIC widget is 15. You should not be able to go to increment the value any further. The value should wrap to 3 after 15. C) #) Press MB1 on the right-pointing arrow. After about 10 seconds, the value displayed in the NUMERIC child should be incremented by 3. Do not release MB1. After about 10 seconds, the value displayed in the NUMERIC child should again be incremented by 3. The reason for the valueChangedCallback and the modifyVerifyCallback should be XmCR_SPIN_NEXT. Release MB1. The reason for the valueChangedCallback should be XmCR_OK. C) #) The two arrows of the SpinBox should be at the rightmost edge of the SpinBox, and horizontally adjacent to each other. #) The height of the arrows should now be 50 pixels. #) The visible item in the STRING child should be "June". The visible item in the NUMERIC child should be 0.7. (The number of decimal places that the integer value is displayed with has been increased to 1.) #) Set the focus to the STRING child. The right-pointing arrow should be insensitive, and the left-pointing arrow, sensitive. #) Set the focus to the NUMERIC child. The right-pointing arrow should be sensitive, and the left-pointing arrow, insensitive. #) With the focus on the NUMERIC child, press MB1 on the right-pointing arrow. Hold it down. After about 10 seconds, the value displayed in the NUMERIC child should be incremented to 0.8. Do not release MB1. After about 10 seconds, the value displayed in the NUMERIC child should again be incremented to 0.9. The reason for the valueChangedCallback and the modifyVerifyCallback should be XmCR_SPIN_NEXT. C) #) The two arrows should now be at either end of the SpinBox. #) Set the focus to the STRING child. The left arrow should be sensitive, and the right, insensitive. #) Set the focus to the NUMERIC child. The right arrow should be sensitive, and the left, insensitive. #) The value of the numeric child should be 0.1. #) With the focus on the NUMERIC child, press MB1 on the right-pointing arrow, and hold. The value displayed in the NUMERIC child should remain the same. Release MB1. The value in the NUMERIC child should increment to 1.1 with no perceptible delay. C) #) The two arrows should now be at the leftmost edge of the SpinBox, and horizontally adjacent to each other. #) Both arrows of the SpinBox should now be insensitive. #) Set the focus in turn to the NUMERIC and STRING child. Both arrows should continue to be insensitive. C) #) The two arrows should now be at the rightmost edge of the SpinBox, and horizontally adjacent to each other. #) Both arrows of the SpinBox should be insensitive. C) #) The two arrows should now be to the right of the text widgets, with an upward pointing arrow displayed above a downward one. #) Both arrows should be insensitive. (SpinBox3 TP 8: Motif/CDE Convergence) C) #) The two arrows should be to the left of the text widgets, one above the other. #) The upward arrow will be insensitive, and the downward arrow will be sensitive. (SpinBox 3 TP 9: Motif/CDE Convergence) C) #) The two arrows should be to the right of the text widgets, one above the other. #) The upward arrow will be sensitive, and the downward arrow will be insensitive. (SpinBox 3 TP 10: Motif/CDE Convergence) C) #) The two arrows should appear to the left of the SpinBox text widgets, with the downward arrow to the left of the upward arrow. (SpinBox 3 TP 11: Motif/CDE Convergence) C) #) Set the focus on the STRING SpinBox. Its layout should appear unchanged. #) The downward pointing arrow is sensitive, and the upward arrow is insensitive. (SpinBox 3 TP 12: Motif/CDE Convergence) C) #) Set the focus on the NUMERIC SpinBox. Its layout should appear unchanged. #) The downward pointing arrow is insensitive, and the upward arrow is sensitive. (SpinBox 3 TP 13: Motif/CDE Convergence) C) #) The two arrows should appear to the right of the SpinBox text widgets, with the downward arrow to the left of the upward arrow. (SpinBox 3 TP 14: Motif/CDE Convergence) C) #) Set the focus on the STRING SpinBox. Its layout should appear unchanged. #) The downward pointing arrow is sensitive, and the upward arrow is insensitive. (SpinBox 3 TP 15: Motif/CDE Convergence) C) #) Set the focus on the NUMERIC SpinBox. Its layout should appear unchanged. #) The downward pointing arrow is insensitive, and the upward arrow is sensitive. (SpinBox 3 TP 16: Motif/CDE Convergence) C) #) The two arrows should appear to both sides of the SpinBox text widgets, with the downward arrow to the left of the upward arrow. (SpinBox 3 TP 17: Motif/CDE Convergence) C) #) Set the focus on the STRING SpinBox. Its layout should appear unchanged. #) The downward pointing arrow is sensitive, and the upward arrow is insensitive. (SpinBox 3 TP 18: Motif/CDE Convergence) C) #) Set the focus on the NUMERIC SpinBox. Its layout should appear unchanged. #) The downward pointing arrow is insensitive, and the upward arrow is sensitive. (SpinBox 3 TP 19: Motif/CDE Convergence) C) E)