Blob Blame History Raw
/* 
 * Motif
 *
 * Copyright (c) 1987-2012, The Open Group. All rights reserved.
 *
 * These libraries and programs are free software; you can
 * redistribute them and/or modify them under the terms of the GNU
 * Lesser General Public License as published by the Free Software
 * Foundation; either version 2 of the License, or (at your option)
 * any later version.
 *
 * These libraries and programs are distributed in the hope that
 * they will be useful, but WITHOUT ANY WARRANTY; without even the
 * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
 * PURPOSE. See the GNU Lesser General Public License for more
 * details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with these librararies and programs; if not, write
 * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
 * Floor, Boston, MA 02110-1301 USA
*/ 
/* 
 * HISTORY
*/ 
/*
static char rcsid[] = "$XConsortium: Text12.dat /main/6 1995/07/13 19:27:03 drk $"
*/
@) A client with a list of functions, a control panel and a Text widget to 
be acted upon should appear.
#) Drag MB1 in the Action Text widget to make a small selection.
#) Select XmTextGetSelectionPosition() and call the function. 
The left and right end positions
of the selection will
correspond to the values shown in the Status/Input widget.
#) Select the XmTextGetSelection() function, and click Call Function.
The selected string from Action Text should appear
in the status widget.
#) Select the XmTextSetSelection() function.
Set Num Arg 1 to a low number and Num Arg 2 to a number larger the Num Arg 1.
Click Call Function.  The characters selected in the Action Text will 
correspond to the range between Num Arg 1 and Num Arg 2.
#) Select the XmTextGetSelection() function and call it.  The selection
made in previous step should appear in the Status/Input widget.
#) Select the XmTextClearSelection() function and call it.  The
selection in the Action widget will be deselected.
C)
#) Click the Clear Args PushButton to reset the control panel.
#) Select the XmTextInsert() function.  Set the Num Arg 1 Scale to 3.
#) Click in the Status/Input widget and type in a new string like "NEW".
#) Click the Call Function PushButton.  The string in the Status/Input
widget should get inserted after the third character in the Action Text 
widget.
C)
#) Make a selection in the Action Text widget by dragging MB1.
#) Select the XmTextSetAddMode() function and set the True/False
ToggleButton to True.  Click Call Function.
#) Traverse to the Action Text widget using the keyboard by pressing
osfTab twice.  The insertion cursor should be stippled.
#) Use the osfLeft or osfRight arrow keys to move the insertion cursor
around.  Note that the selection remains selected.
#) Click the True/False ToggleButton to change the state to False.
#) Click the Call Function PushButton to set the Action Text back to
normal mode.
#) Again, traverse to the Action Text widget and then move around with
the arrow keys.  Assuming the selection was still there when focus 
arrived in the Action Text widget, the arrow keys should have now
deselected the selection.
C)
#) Select and call the XmTextGetString() function.  The entire string from
the Action Text widget should appear in the Status/Input widget.  Note that
the string may be wider than the Status widget width.  Use the arrow
keys to move to the hidden text.
#) Click the Clear Args PushButton to reset the control panel.
#) Select the XmTextSetString() function.  
#) Click in the Status/Input widget and type "Here is a new string". 
#) Click the Call Function PushButton.  The new text from the Status
widget should replace all the text that was previously in the Action
Text widget.
#) Click the Clear Args PushButton.
#) Select the XmTextReplace() function.  Set the Num Arg 1 Scale to 2
and the Num Arg 2 Scale to 7.
#) Click in the Status/Input widget and type "y wheres".
#) Click the Call Function PushButton.  The Action Text widget should
now read "Hey wheres a new string".
C)
/* test case for PIR 2878 */
#) Drag MB1 in the Action Text widget to make a selection.
#) Select and call the XmTextGetSelection() function.
The selection string will appear in the status widget.
#) Click MB1 in the Action Text widget so that there is no longer a selection.
#) Click Call Function again.  The status widget should read
"No selection found."
#) Click MB1 on the Clear Args Pushbutton.
#) Click MB1 on the XmTextSetString() function.
#) Type "Hey wheres a new string" in the Status/Input widget.
#) Click MB1 on the Call Function PushButton.
#) The text from the Status/Input widget should display in the Action Text
   widget.

/* end of test case for PIR 2878 */
C)
#) Click the Clear Args PushButton.
#) Select the XmTextFindString() function.
#) Click in the Status/Input widget and type "new".
#) Click the Call Function PushButton.  The Status/Input widget should
indicate the string was found.  The Action Text widget should have the
search string selected.
#) Click the Clear Args PushButton.
#) Select the XmTextFindString() function.
#) Click in the Status/Input widget and type "old", and click Call Function.
#) The Status/Input widget should indicate that the string was not found.
#) Click the Clear Args PushButton.
#) Select the XmTextFindString() function.
#) Set Num Arg 1 to 28.  Toggle the Forward/Backward Arg to Backward.
#) Click in the Status widget and type "ey", and click Call Function.
#) The Status widget should indicate the string was found and the Action
Text should have the search string selected.
#) Click the Clear Args PushButton.
#) Select the XmTextFindString() function.
#) Set Num Arg 1 to 28.  Toggle the Forward/Backward Arg to Backward.
#) Click in the Status widget and type "He", and click Call Function.
C)
#) Click the Clear Args PushButton.
#) Select the XmTextGetSubString() function.
#) Set the Num Arg 1 Scale to 5, the Num Arg 2 Scale to 4, and
the Num Arg 3 Scale to 5.
#) Click the Call Function PushButton.  The Status/Input widget should
contain the substring "here".
#) Set the Num Arg 1 Scale to 20, the Num Arg 2 Scale to 4, and
the Num Arg 3 Scale to 5.
#) Click the Call Function PushButton.  The Status/Input widget should
contain the substring "(XmCOPY_TRUNCATED) ing".
#) Set the Num Arg 1 Scale to 5, the Num Arg 2 Scale to 4, and
the Num Arg 3 Scale to 3.
#) Click the Call Function PushButton.  The Status/Input widget should
contain the substring "Return: XmCOPY_FAILED".
C)
#) Click the Clear Args Pushbutton.
#) Select the XmTextDisableRedisplay() function and call it.
The Action Text widget now has its display updating disabled.
The insertion cursor should not be visible.
#) Select the XmTextSetString() function.
#) Click in the Status/Input widget and type "This won't show up". 
#) Click the Call Function PushButton.  The Action Text widget should
remain exactly as it was - unchanged.
#) Select the XmTextEnableRedisplay() function and call it.
The new text from the Status
widget should replace all the text that was previously in the Action
Text widget.
The insertion cursor should be visible once again.
E)