XmeAddFocusChangeCallback(3)
XmeAddFocusChangeCallback - Registers a callback for focus changes
As shipped in IRIX 6.5.5. Added in IRIX 6.5.5.
This page could not be fully tidied (no-header); it is shown as printed.
NAME XmeAddFocusChangeCallback - Registers a callback for focus changes SYNOPSIS #include <Xm/VendorSEP.h> void XmeAddFocusChangeCallback( Widget widget, XtCallbackProc callback_procedure, XtPointer data); DESCRIPTION XmeAddFocusChangeCallback registers a callback_procedure to be called whenever there is a focus change to any widget in the widget tree managed by a specified VendorShell or subclass of VendorShell. This callback_procedure is called the focus change callback. Motif will not call the focus change callbacks when the VendorShell (or subclass) is in implicit mode. In explicit mode, Motif automatically calls the focus change callbacks whenever the user or the application attempts to change focus. Your focus change callback procedure has the option of accepting or rejecting the attempted focus change. Registering a focus change callback can cause an entire application to run more slowly because the focus change callbacks might be called fairly frequently. A focus change callback can be removed by calling XmeRemoveFocusChangeCallback. widget Specifies the widget whose children are to be monitored for focus changes. The specified widget must be a VendorShell or a subclass of VendorShell. callback_procedure Specifies the callback procedure to be called whenever there is a focus change. data Specifies the call data to be passed as the call_data argument to the callback procedure. Motif passes a pointer to an XmFocusMovedCallbackStruct to callback_procedure. When callback_procedure returns, Motif examines the cont field only. typedef struct { int reason ; XEvent *event; Boolean cont; Widget old_focus; Widget new_focus; unsigned char focus_policy; XmTraversalDirection direction; } XmFocusMovedCallbackStruct; reason Indicates why the callback was invoked. Motif always sets this field to XmCR_FOCUS_MOVED. event Points to the event that triggered the callback. cont Indicates whether an attempted focus change will be allowed or rejected. A focus change callback should set contto True (the default) to permit the focus change. A focus change callback should set cont to False to reject the focus change. Therefore, if you set cont to False, Motif will ensure that the focus stays at widget old_focus. old_focus Indicates the widget ID of the widget that had keyboard focus immediately prior to the most recent traversal. new_focus Indicates the widget ID of the widget that has just gotten keyboard focus. focus_policy Indicates the VendorShell's keyboard focus policy; this will always be XmEXPLICIT since callback_procedure only gets called in explicit mode. direction Specifies the direction of the traversal. (See XmProcessTraversal(3) in the Motif Programmer's Referencefor details on possible values of the XmTraversalDirection enumerated type.) RELATED XmeRemoveFocusChangeCallback(3).