XChangeDeviceDontPropagateList(3X11)

名前
XChangeDeviceDontPropagateList, XGetDeviceDontPropagateList - 拡張デバイスに対する非伝播リストの問い合わせと変更

書式
XChangeDeviceDontPropagateList(display, window, count, event_list, mode)
      Display *display;
      Window *window;
      int *count;
      XEventClass *event_list;
      int mode;
XEventClass *XGetDeviceDontPropagateList(display, window, count)
      Display *display;
      Window *window;
      int *count;

引き数

display
    X サーバへの接続を指定。

window
    問い合わせや変更を行う非伝播リストがあるウィンドウを指定。

event_list
    イベントクラスのリストへのポインタを指定。

mode
    モードを指定。 AddToList と DeleteFromList. のいずれかを指定。

count
    リスト中のイベントクラスの数を指定。

説明
XChangeDeviceDontPropagateList リクエストは、イベントウィンドウ の祖先ウィンドウに伝播させないイベントのリストを変更する。 このリクエストを使って、拡張イベントをリストに追加・削除することができ る。デフォルトでは、全てのイベントは祖先ウィンドウに伝播される。 一度変更されると、ウィンドウが存続する間はリストは残る。 イベントはリストから削除されない。なぜなら、これらを追加したクライアン トは終了しているからである。

イベント伝播の抑制は全ての拡張入力イベントに対して許されているわけでは ない。指定したイベントクラスが抑制できないものであれば、エラー BadClass となる。抑制できるイベントは以下である: DeviceKeyPress, DeviceKeyRelease, DeviceButtonPress, DeviceButtonRelease, DeviceMotionNotify, ProximityIn, ProximityOut

XChangeDeviceDontPropagateList はエラー BadDevice, BadClass, BadValue を起こすこと がある。

XGetDeviceDontPropagateList リクエストは、イベントウィンドウの祖 先ウィンドウに伝播させないイベントのリストを問い合わせる。

XGetDeviceDontPropagateList はエラー BadClass, BadWindow を起こすことがある。

返り値

BadDevice
    不正なデバイスが指定された。指定したデバイスが存在しないか、クライアン トの XOpenInputDevice によってオープンされていない。このエラーは、 他のクライアントが XChangeKeyboardDevice リクエストや XChangePointerDevice リクエストを使い、指定したデバイスを X のキー ボードデバイスや X のポインタデバイスにした場合にも起こる。

BadValue
    指定された数値に、リクエストの許容範囲を越えているものがある。引き数に対 して特定の範囲が指定されていなければ、引き数の型で定義されている全ての範 囲が許される。選択肢として定義されている引き数はこのエラーを起こすことが ある。

BadWindow
    不正なウィンドウが指定された。

BadClass
    不正なイベントクラスが指定された。

関連項目
Programming With Xlib