void XtAddRawEventHandler(w, event_mask, nonmaskable, proc, client_data)
Widget w;
EventMask event_mask;
Boolean nonmaskable;
XtEventHandler proc;
XtPointer client_data;
void XtRemoveEventHandler(w, event_mask, nonmaskable, proc, client_data)
Widget w;
EventMask event_mask;
Boolean nonmaskable;
XtEventHandler proc;
XtPointer client_data;
void XtRemoveRawEventHandler(w, event_mask, nonmaskable, proc, client_data)
Widget w;
EventMask event_mask;
Boolean nonmaskable;
XtEventHandler proc;
XtPointer client_data;
void XtInsertEventHandler(w, event_mask, nonmaskable, proc, client_data, position)
Widget w;
EventMask event_mask;
Boolean nonmaskable;
XtEventHandler proc;
XtPointer client_data;
XtListPosition position;
void XtInsertRawEventHandler(w, event_mask, nonmaskable, proc, client_data, position)
Widget w;
EventMask event_mask;
Boolean nonmaskable;
XtEventHandler proc;
XtPointer client_data;
XtListPosition position;
typedef enum { XtListHead, XtListTail } XtListPosition;
関数 XtAddRawEventHandler は、 XtAddEventHandler とほぼ同じである。ただし、ウィジェットのマスクを変化させず、イベントに 対して XSelectInput を起こさない点が異なる。 他の raw でないイベントハンドラがそのウィジェットに登録されているため に、ウィジェットには既にマスクビットがセットされているかも知れない点に 注意すること。
関数 XtRemoveRawEventHandler は、指定した手続きが指定したイベントを受け取るのを停止させる。 この手続きは raw なイベントハンドラなので、ウィジェットのマスクは変化 させず、 XSelectInput の呼び出しを起こすこともない。
XtInsertEventHandler は、追加の引き数 position を指定した XtAddEventHandler と同じである。 position が XtListHead ならば、イベントハンドラは、以前に同じウィジェットに対して登録されたど のイベントハンドラよりも前に呼ばれる位置に登録される。 position が XtListTail ならば、イベントハンドラは、以前に登録されたどのイベントハンドラよりも 後に呼び出される位置に登録される。この手続きが既に同じ client_data 値で登録されていた場合、指定したマスクは現在のマスク に加えられ、この手続きはリスト内で再配置される。
XtInsertRawEventHandler は XtInsertEventHandler とほぼ同じである。ただし、ウィジェットのイベントマスクを変更せず、指定 したイベントに対して XSelectInput を起こさない点が異なる。この手続きが同じ client_data で登録され ている場合、指定したマスクは現在のマスクに加えられ、この手続きはリスト 中で再配置される。