XNextEvent(3) イベントを型によって選択する

Other Alias

XPeekEvent, XWindowEvent, XCheckWindowEvent, XMaskEvent, XCheckMaskEvent, XCheckTypedEvent, XCheckTypedWindowEvent

書式

XNextEvent(display, event_return)

      Display *display;

      XEvent *event_return;

XPeekEvent(display, event_return)

      Display *display;

      XEvent *event_return;

XWindowEvent(display, w, event_mask, event_return)

      Display *display;

      Window w;

      long event_mask;

      XEvent *event_return;

Bool XCheckWindowEvent(display, w, event_mask, event_return)

      Display *display;

      Window w;

      long event_mask;

      XEvent *event_return;

XMaskEvent(display, event_mask, event_return)

      Display *display;

      long event_mask;

      XEvent *event_return;

Bool XCheckMaskEvent(display, event_mask, event_return)

      Display *display;

      long event_mask;

      XEvent *event_return;

Bool XCheckTypedEvent(display, event_type, event_return)

      Display *display;

      int event_type;

      XEvent *event_return;

Bool XCheckTypedWindowEvent(display, w, event_type, event_return)

      Display *display;

      Window w;

      int event_type;

      XEvent *event_return;

引き数

display
X サーバへの接続を指定する。
event_mask
イベントマスクを指定する。
event_return
一致したイベントに対応する構造体が返される。
event_return
キューに入っている次のイベントが返される。
event_return
一致したイベントに対応する構造体のコピーが返される。
event_type
比較するイベントの型を指定する。
w
注目しているイベントを所有しているウィンドウを指定する。

説明

関数 XNextEvent はイベントキューの最初のイベントを指定した XEvent 構造体にコピーし、このイベントをキューから削除する。 イベントキューが空の場合、 XNextEvent は出力バッファの内容をフラッシュし、イベントを受け取るまで処理をブロッ クする。

関数 XPeekEvent はイベントキューの最初のイベントを返すが、そのイベントをキューから削除 しない。 イベントキューが空の場合、 XPeekEvent は出力バッファの内容をフラッシュし、イベントを受け取るまで処理をブロッ クする。 そして、そのイベントをクライアントが与えた XEvent 構造体にコピーするが、イベントキューからの削除は行わない。

関数 XWindowEvent はイベントキューを検索し、指定したウィンドウとイベントマスクの両方にマッ チするイベントを探す。 マッチするイベントがあった場合、 XWindowEvent はそのイベントをキューから取り除き、これを指定した XEvent 構造体にコピーする。 イベントキューに入っている他のイベントは破棄されない。 マッチするイベントがキューに入っていない場合、 XWindowEvent は出力バッファの内容をフラッシュし、イベントを受け取るまで処理をブロッ クする。

関数 XCheckWindowEvent はまずイベントキューを、次にサーバとの接続上で可能なイベントを検索し、 指定したウィンドウとイベントマスクにマッチする最初のイベントを返す。 マッチするイベントがあった場合、 XCheckWindowEvent はそのイベントを削除し、これを指定した XEvent 構造体にコピーし、 True を返す。 キューに入っている他のイベントは破棄されない。 要求したイベントが利用できない場合、 XCheckWindowEventFalse を返し、出力バッファはフラッシュされる。

関数 XMaskEvent はイベントキューを検索し、指定したマスクに対応するイベントを見つける。 マッチするイベントが見つかった場合、 XMaskEvent はそのイベントをキューから削除し、指定した XEvent 構造体にコピーする。 キューに入っている他のイベントは破棄されない。 要求したイベントがキューに入っていない場合、 XMaskEvent は出力バッファの内容をフラッシュし、イベントを受け取るまで処理をブロッ クする。

関数 XCheckMaskEvent はイベントキューとサーバ接続上で利用可能な全てのイベントを検索し、指定 したマスクにマッチする最初のイベントを見つける。 マッチするイベントを見つけた場合、 XCheckMaskEvent はそのイベントを削除し、これを指定した XEvent 構造体にコピーし、 True. を返す。 キューに入っている他のイベントは破棄されない。 要求したイベントが利用できない場合、 XCheckMaskEventFalse を返し、出力バッファはフラッシュされる。

関数 XCheckTypedEvent はイベントキューとサーバ接続上で利用可能な全てのイベントを検索し、指定 した型にマッチする最初のイベントを見つける。 マッチするイベントが見つかった場合、 XCheckTypedEvent はそのイベントを削除し、これを指定した XEvent 構造体にコピーし、 True を返す。 キューに入っている他のイベントは破棄されない。 イベントが利用できない場合、 XCheckTypedEventFalse を返し、出力バッファはフラッシュされる。

関数 XCheckTypedWindowEvent はイベントキューとサーバ接続上で利用可能な全てのイベントを検索し、指定 した型とウィンドウにマッチする最初のウィンドウを見つける。 マッチするイベントが見つかった場合、 XCheckTypedWindowEvent はこのイベントをキューから削除し、これを指定した XEvent 構造体にコピーし、 True を返す。 キューに入っている他のイベントは破棄されない。 イベントが利用できない場合、 XCheckTypedWindowEventFalse を返し、出力バッファはフラッシュされる。