216 lines
6.1 KiB
Plaintext
216 lines
6.1 KiB
Plaintext
XCOMM! CDE_INSTALLATION_TOP/bin/dtksh
|
|
XCOMM $XConsortium: EventHandlerTest.src /main/3 1996/04/23 20:18:10 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 event handlers can be added
|
|
XCOMM and removed. It also demonstrates how the EH_WIDGET and EH_EVENT
|
|
XCOMM convenience environment variables can be referenced.
|
|
XCOMM
|
|
|
|
|
|
EventHandler1()
|
|
{
|
|
echo "EH_WIDGET ="$EH_WIDGET
|
|
echo "EH_EVENT ="$EH_EVENT
|
|
echo "EH_EVENT.TYPE ="${EH_EVENT.TYPE}
|
|
echo "event handler 1 invoked ("$1")"
|
|
}
|
|
|
|
EventHandler2()
|
|
{
|
|
echo "EH_WIDGET ="$EH_WIDGET
|
|
echo "EH_EVENT ="$EH_EVENT
|
|
echo "EH_EVENT.TYPE ="${EH_EVENT.TYPE}
|
|
echo "event handler 1 invoked ("$1")"
|
|
}
|
|
|
|
XCOMM PushbuttonCallback: Adds an event handler to the form widget
|
|
AddMaskableEventHandler1()
|
|
{
|
|
XtAddEventHandler $FORM2 "Button2MotionMask" False \
|
|
"EventHandler1 1"
|
|
}
|
|
|
|
XCOMM PushbuttonCallback: Adds an event handler to the form widget
|
|
AddMaskableEventHandler2()
|
|
{
|
|
XtAddEventHandler $FORM2 "ButtonPressMask|ButtonReleaseMask" False \
|
|
"EventHandler1 1"
|
|
}
|
|
|
|
XCOMM PushbuttonCallback: Adds an event handler to the form widget
|
|
AddMaskableEventHandler3()
|
|
{
|
|
XtAddEventHandler $FORM2 "Button2MotionMask" False \
|
|
"EventHandler1 2"
|
|
}
|
|
|
|
XCOMM PushbuttonCallback: Adds an event handler to the form widget
|
|
AddNonmaskableEventHandler()
|
|
{
|
|
XtAddEventHandler $FORM2 "NoEventMask" True "EventHandler2 1"
|
|
}
|
|
|
|
XCOMM PushbuttonCallback: Adds an event handler to the form widget.
|
|
XCOMM Should report a bad event mask.
|
|
AddBadEventHandler()
|
|
{
|
|
XtAddEventHandler $FORM2 "fooMask" False "EventHandler2 1"
|
|
}
|
|
|
|
XCOMM PushbuttonCallback: Removes an event handler to the form widget
|
|
RemoveEventHandler1()
|
|
{
|
|
XtRemoveEventHandler $FORM2 "Button2MotionMask" False \
|
|
"EventHandler1 1"
|
|
}
|
|
|
|
XCOMM PushbuttonCallback: Removes an event handler to the form widget
|
|
RemoveEventHandler2()
|
|
{
|
|
XtRemoveEventHandler $FORM2 "ButtonPressMask|ButtonReleaseMask" False \
|
|
"EventHandler1 1"
|
|
}
|
|
|
|
XCOMM PushbuttonCallback: Removes an event handler to the form widget
|
|
RemoveEventHandler1and2()
|
|
{
|
|
XtRemoveEventHandler $FORM2 "XtAllEvents" True "EventHandler1 1"
|
|
}
|
|
|
|
|
|
|
|
XCOMM ###################### Create the Main UI ###############################
|
|
|
|
XtInitialize TOPLEVEL eventHandlerTest EventHandlerTest "$0" "$@"
|
|
|
|
XtCreateManagedWidget FORM form XmForm $TOPLEVEL
|
|
|
|
XtCreateManagedWidget FORM2 form2 XmForm $FORM \
|
|
topAttachment:ATTACH_FORM \
|
|
leftAttachment:ATTACH_FORM \
|
|
rightAttachment:ATTACH_FORM
|
|
XtSetValues $FORM2 height:150 width:150
|
|
|
|
XtCreateManagedWidget SEP sep XmSeparator $FORM \
|
|
topAttachment:ATTACH_WIDGET \
|
|
topWidget:$FORM2 \
|
|
leftAttachment:ATTACH_FORM \
|
|
rightAttachment:ATTACH_FORM
|
|
|
|
XtCreateManagedWidget PB1 pb XmPushButton $FORM \
|
|
labelString:"Add Maskable Event Handler 1" \
|
|
topAttachment:ATTACH_WIDGET \
|
|
topWidget:$SEP \
|
|
topOffset:10 \
|
|
leftAttachment:ATTACH_POSITION \
|
|
leftPosition:10 \
|
|
rightAttachment:ATTACH_POSITION \
|
|
rightPosition:40
|
|
XtAddCallback $PB1 activateCallback AddMaskableEventHandler1
|
|
|
|
XtCreateManagedWidget PB2 pb2 XmPushButton $FORM \
|
|
labelString:"Add Maskable Event Handler 2" \
|
|
topAttachment:ATTACH_WIDGET \
|
|
topWidget:$SEP \
|
|
topOffset:10 \
|
|
leftAttachment:ATTACH_POSITION \
|
|
leftPosition:60 \
|
|
rightAttachment:ATTACH_POSITION \
|
|
rightPosition:90
|
|
XtAddCallback $PB2 activateCallback AddMaskableEventHandler2
|
|
|
|
XtCreateManagedWidget PB3 pb3 XmPushButton $FORM \
|
|
labelString:"Add Maskable Event Handler 3" \
|
|
topAttachment:ATTACH_WIDGET \
|
|
topWidget:$PB2 \
|
|
topOffset:10 \
|
|
leftAttachment:ATTACH_POSITION \
|
|
leftPosition:10 \
|
|
rightAttachment:ATTACH_POSITION \
|
|
rightPosition:40
|
|
XtAddCallback $PB3 activateCallback AddMaskableEventHandler3
|
|
|
|
XtCreateManagedWidget PB4 pb4 XmPushButton $FORM \
|
|
labelString:"Add Maskable Event Handler 4" \
|
|
topAttachment:ATTACH_WIDGET \
|
|
topWidget:$PB2 \
|
|
topOffset:10 \
|
|
leftAttachment:ATTACH_POSITION \
|
|
leftPosition:60 \
|
|
rightAttachment:ATTACH_POSITION \
|
|
rightPosition:90
|
|
XtAddCallback $PB4 activateCallback AddMaskableEventHandler4
|
|
XtSetSensitive $PB4 False
|
|
|
|
XtCreateManagedWidget PB5 pb5 XmPushButton $FORM \
|
|
labelString:"Add non-maskable Event Handler" \
|
|
topAttachment:ATTACH_WIDGET \
|
|
topWidget:$PB4 \
|
|
topOffset:10 \
|
|
leftAttachment:ATTACH_POSITION \
|
|
leftPosition:10 \
|
|
rightAttachment:ATTACH_POSITION \
|
|
rightPosition:40
|
|
XtAddCallback $PB5 activateCallback AddNonmaskableEventHandler
|
|
|
|
XtCreateManagedWidget PB6 pb6 XmPushButton $FORM \
|
|
labelString:"Add Bad Event Handler" \
|
|
topAttachment:ATTACH_WIDGET \
|
|
topWidget:$PB4 \
|
|
topOffset:10 \
|
|
leftAttachment:ATTACH_POSITION \
|
|
leftPosition:60 \
|
|
rightAttachment:ATTACH_POSITION \
|
|
rightPosition:90
|
|
XtAddCallback $PB6 activateCallback AddBadEventHandler
|
|
|
|
XtCreateManagedWidget PB7 pb7 XmPushButton $FORM \
|
|
labelString:"Remove Maskable Event Handler 1" \
|
|
topAttachment:ATTACH_WIDGET \
|
|
topWidget:$PB6 \
|
|
topOffset:10 \
|
|
leftAttachment:ATTACH_POSITION \
|
|
leftPosition:10 \
|
|
rightAttachment:ATTACH_POSITION \
|
|
rightPosition:40
|
|
XtAddCallback $PB7 activateCallback RemoveEventHandler1
|
|
|
|
XtCreateManagedWidget PB8 pb8 XmPushButton $FORM \
|
|
labelString:"Remove Maskable Event Handler 2" \
|
|
topAttachment:ATTACH_WIDGET \
|
|
topWidget:$PB6 \
|
|
topOffset:10 \
|
|
leftAttachment:ATTACH_POSITION \
|
|
leftPosition:60 \
|
|
rightAttachment:ATTACH_POSITION \
|
|
rightPosition:90
|
|
XtAddCallback $PB8 activateCallback RemoveEventHandler2
|
|
|
|
XtCreateManagedWidget PB9 pb9 XmPushButton $FORM \
|
|
labelString:"Remove Maskable Event Handler 1 and 2" \
|
|
topAttachment:ATTACH_WIDGET \
|
|
topWidget:$PB8 \
|
|
topOffset:10 \
|
|
leftAttachment:ATTACH_POSITION \
|
|
leftPosition:10 \
|
|
rightAttachment:ATTACH_POSITION \
|
|
rightPosition:40 \
|
|
bottomAttachment:ATTACH_FORM \
|
|
bottomOffset:10
|
|
XtAddCallback $PB9 activateCallback RemoveEventHandler1and2
|
|
|
|
|
|
XtRealizeWidget $TOPLEVEL
|
|
|
|
XtMainLoop
|