Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ XmeAddFocusChangeCallback() — IRIX 6.5.3f

Media Vault

Software Library

Restoration Projects

Artifacts Sought



     XmeAddFocusChangeCallback(XmeAddFocusChangeCallback(library call)



     NAME
          XmeAddFocusChangeCallback - Registers a callback for focus
          changes

     SYNOPSIS
          #include <Xm/VendorSEP.h>

          void XmeAddFocusChangeCallback(
          Widget widget,
          XtCallbackProc callbackprocedure,
          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;



     Page 1                                          (printed 1/22/99)





     XmeAddFocusChangeCallback(XmeAddFocusChangeCallback(library call)



                  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 XmCRFOCUSMOVED.

          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).
















     Page 2                                          (printed 1/22/99)



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026