10.1 Event Types

An event is data generated asynchronously by the X server as a result of some device activity or as side effects of a request sent by an Xlib function. Device-related events propagate from the source window to ancestor windows until some client application has selected that event type or until the event is explicitly discarded. The X server generally sends an event to a client application only if the client has specifically asked to be informed of that event type, typically by setting the event-mask attribute of the window. The mask can also be set when you create a window or by changing the window's event-mask. You can also mask out events that would propagate to ancestor windows by manipulating the do-not-propagate mask of the window's attributes. However, MappingNotify events are always sent to all clients.
イベントはあるデバイス活動の結果として、 あるいは Xlib 関数によって送られたリクエストの結果として、 X サーバーによって非同期に発生させられた情報である。 あるクライアント・アプリケーションがそのイベント型(type)を取得するときまで、 あるいは明白に破棄されるときまで、 デバイスに関連するイベントは元のウインドウから上位階層ウインドウへ伝えられる。 一般にクライアントが明示的にウインドウの イベントマスク属性を設定することによって、 明確にそのイベント型(type)の通知を受ける事を要求した場合に限り、 X サーバーはクライアント・アプリケーションにイベントを送る。 また、ウインドウを作り出すとき、 あるいはウインドウの イベントマスクを変更することによって、 マスクは設定できる。 更に、あなたはウインドウ属性の 伝播させないイベントを指定する (do-not-propagate)マスクを操作することによって、 上位階層ウインドウへ伝わるはずのイベントを隠すことができる。 しかしながら、 MappingNotify イベントは、常にすべてのクライアントに送られる。

An event type describes a specific event generated by the X server. For each event type, a corresponding constant name is defined in X11/X.h, which is used when referring to an event type. The following table lists the event category and its associated event type or types. The processing associated with these events is discussed in section "Event Processing Overview".
イベント型(type)は X サーバーによって発生させられた特定のイベントを表す。 対応する定数名はイベント型(type)を参照する時に使われる X11/X.h において定義される。 以下のテーブルはイベント・カテゴリー、 およびそれに関連するイベント型(type)を列挙する。 これらのイベントに関係がある処理は "Event Processing Overview" で議論される。


Event Category Event Type

Keyboard events KeyPress, KeyRelease
Pointer events ButtonPress, ButtonRelease, MotionNotify
Window crossing events EnterNotify, LeaveNotify
Input focus events FocusIn, FocusOut
Keymap state notification event KeymapNotify
Exposure events Expose, GraphicsExpose, NoExpose
Structure control events CirculateRequest, ConfigureRequest, MapRequest, ResizeRequest
Window state notification events CirculateNotify, ConfigureNotify, CreateNotify, DestroyNotify, GravityNotify, MapNotify, MappingNotify, ReparentNotify, UnmapNotify, VisibilityNotify
Colormap state notification event ColormapNotify
Client communication events ClientMessage, PropertyNotify, SelectionClear, SelectionNotify, SelectionRequest

Next: Event Structures

Christophe Tronche, ch.tronche@computer.org