144 lines
4.7 KiB
Plaintext
144 lines
4.7 KiB
Plaintext
XCOMM! CDE_INSTALLATION_TOP/bin/dtksh
|
|
XCOMM $XConsortium: CallDataTest4.src /main/3 1996/04/23 20:17:51 drk $
|
|
|
|
XCOMM #########################################################################
|
|
XCOMM (c) Copyright 1993, 1994 Hewlett-Packard Company
|
|
XCOMM (c) Copyright 1993, 1994 International Business Machines Corp.
|
|
XCOMM (c) Copyright 1993, 1994 Sun Microsystems, Inc.
|
|
XCOMM (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
|
|
XCOMM Novell, Inc.
|
|
XCOMM #########################################################################
|
|
|
|
|
|
XCOMM
|
|
XCOMM This sample shell script demonstrates how the CB_WIDGET and CB_CALL_DATA
|
|
XCOMM convenience environment variables can be referenced within a callback
|
|
XCOMM function.
|
|
XCOMM
|
|
|
|
XCOMM PushButton Callback: Forces the scale to reset to the origin
|
|
ResetScale()
|
|
{
|
|
XmScaleSetValue $SCALE 0
|
|
}
|
|
|
|
XCOMM PushButton Callback: Forces the scale to its minimum value
|
|
SetScaleMin()
|
|
{
|
|
XmScaleSetValue $SCALE -200
|
|
}
|
|
|
|
XCOMM PushButton Callback: Forces the scale to its maximum value
|
|
SetScaleMax()
|
|
{
|
|
XmScaleSetValue $SCALE 200
|
|
|
|
echo "CB Widget = "$CB_WIDGET
|
|
echo "CallData = "$CB_CALL_DATA
|
|
echo "CallData.Reason = "${CB_CALL_DATA.REASON}
|
|
echo "CallData.Event = "${CB_CALL_DATA.EVENT}
|
|
echo "CallData.Event.Type = "${CB_CALL_DATA.EVENT.TYPE}
|
|
echo "CallData.Event.Xbutton.Type = "${CB_CALL_DATA.EVENT.XBUTTON.TYPE}
|
|
echo "CallData.Event.Xbutton.Serial = "${CB_CALL_DATA.EVENT.XBUTTON.SERIAL}
|
|
echo "CallData.Event.Xbutton.Send_Event = "${CB_CALL_DATA.EVENT.XBUTTON.SEND_EVENT}
|
|
echo "CallData.Event.Xbutton.Display = "${CB_CALL_DATA.EVENT.XBUTTON.DISPLAY}
|
|
echo "CallData.Event.Xbutton.Window = "${CB_CALL_DATA.EVENT.XBUTTON.WINDOW}
|
|
echo "CallData.Event.Xbutton.Root = "${CB_CALL_DATA.EVENT.XBUTTON.ROOT}
|
|
echo "CallData.Event.Xbutton.Subwindow = "${CB_CALL_DATA.EVENT.XBUTTON.SUBWINDOW}
|
|
echo "CallData.Event.Xbutton.Time = "${CB_CALL_DATA.EVENT.XBUTTON.TIME}
|
|
echo "CallData.Event.Xbutton.X = "${CB_CALL_DATA.EVENT.XBUTTON.X}
|
|
echo "CallData.Event.Xbutton.Y = "${CB_CALL_DATA.EVENT.XBUTTON.Y}
|
|
echo "CallData.Event.Xbutton.X_root = "${CB_CALL_DATA.EVENT.XBUTTON.X_ROOT}
|
|
echo "CallData.Event.Xbutton.Y_root = "${CB_CALL_DATA.EVENT.XBUTTON.Y_ROOT}
|
|
echo "CallData.Event.Xbutton.State = "${CB_CALL_DATA.EVENT.XBUTTON.STATE}
|
|
echo "CallData.Event.Xbutton.Button = "${CB_CALL_DATA.EVENT.XBUTTON.BUTTON}
|
|
echo "CallData.Event.Xbutton.Same_Screen = "${CB_CALL_DATA.EVENT.XBUTTON.SAME_SCREEN}
|
|
echo
|
|
}
|
|
|
|
|
|
XCOMM Scale Callback: Invoked when the user interactively modified the scale value
|
|
ScaleValueChanged()
|
|
{
|
|
XmScaleGetValue $CB_WIDGET VALUE
|
|
|
|
echo "New Scale Value = "$VALUE
|
|
echo "CB Widget = "$CB_WIDGET
|
|
echo "CallData = "$CB_CALL_DATA
|
|
echo "CallData.Value = "${CB_CALL_DATA.VALUE}
|
|
echo "CallData.Event = "${CB_CALL_DATA.EVENT}
|
|
echo "CallData.Event.Xany.Type = "${CB_CALL_DATA.EVENT.XANY.TYPE}
|
|
echo "CallData.Event.Type = "${CB_CALL_DATA.EVENT.TYPE}
|
|
echo "CallData.Reason = "${CB_CALL_DATA.REASON}
|
|
echo
|
|
}
|
|
|
|
XCOMM ###################### Create the Main UI ###############################
|
|
|
|
XtInitialize TOPLEVEL command1 Command1 "$0" "$@"
|
|
|
|
XtCreateManagedWidget FORM form XmForm $TOPLEVEL
|
|
|
|
XtCreateManagedWidget SCALE scale XmScale $FORM \
|
|
showValue:True \
|
|
orientation:HORIZONTAL \
|
|
maximum:200 \
|
|
minimum:-200 \
|
|
topAttachment:ATTACH_FORM \
|
|
topOffset:10 \
|
|
leftAttachment:ATTACH_FORM \
|
|
leftOffset:10 \
|
|
rightAttachment:ATTACH_FORM \
|
|
rightOffset:10
|
|
XtAddCallback $SCALE valueChangedCallback ScaleValueChanged
|
|
|
|
XtCreateManagedWidget SEP sep XmSeparator $FORM \
|
|
topAttachment:ATTACH_WIDGET \
|
|
topWidget:$SCALE \
|
|
topOffset:10 \
|
|
leftAttachment:ATTACH_FORM \
|
|
rightAttachment:ATTACH_FORM
|
|
|
|
XtCreateManagedWidget PB pb XmPushButton $FORM \
|
|
labelString:"Reset Scale" \
|
|
topAttachment:ATTACH_WIDGET \
|
|
topOffset:10 \
|
|
topWidget:$SEP \
|
|
bottomAttachment:ATTACH_FORM \
|
|
bottomOffset:10 \
|
|
leftAttachment:ATTACH_POSITION \
|
|
leftPosition:10 \
|
|
rightAttachment:ATTACH_POSITION \
|
|
rightPosition:30
|
|
XtAddCallback $PB activateCallback ResetScale
|
|
|
|
XtCreateManagedWidget PB2 pb XmPushButton $FORM \
|
|
labelString:"Set Scale Max" \
|
|
topAttachment:ATTACH_WIDGET \
|
|
topOffset:10 \
|
|
topWidget:$SEP \
|
|
bottomAttachment:ATTACH_FORM \
|
|
bottomOffset:10 \
|
|
leftAttachment:ATTACH_POSITION \
|
|
leftPosition:40 \
|
|
rightAttachment:ATTACH_POSITION \
|
|
rightPosition:60
|
|
XtAddCallback $PB2 activateCallback SetScaleMax
|
|
|
|
XtCreateManagedWidget PB3 pb XmPushButton $FORM \
|
|
labelString:"Set Scale Min" \
|
|
topAttachment:ATTACH_WIDGET \
|
|
topOffset:10 \
|
|
topWidget:$SEP \
|
|
bottomAttachment:ATTACH_FORM \
|
|
bottomOffset:10 \
|
|
leftAttachment:ATTACH_POSITION \
|
|
leftPosition:70 \
|
|
rightAttachment:ATTACH_POSITION \
|
|
rightPosition:90
|
|
XtAddCallback $PB3 activateCallback SetScaleMin
|
|
|
|
XtRealizeWidget $TOPLEVEL
|
|
|
|
XtMainLoop
|