Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ XGetInputFocus(3X11) — NEWS-os 4.1C

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

XWarpPointer(3X11)

XSetInputFocus(3X11)  —  NEWS-OS Programmer’s Manual

名称

XSetInputFocus, XGetInputFocus - 入力フォーカスを制御する

形式

XSetInputFocus(display, focus, revert_to, time)
      Display ∗display;
      Window focus;
      int revert_to;
      Time time; XGetInputFocus(display, focus_return, revert_to_return)
      Display ∗display;
      Window ∗focus_return;
      int ∗revert_to_return;

引数

displayX サーバへのコネクションを指定します。

focusウィンドウ、 PointerRoot または、 None を指定します。

focus_returnフォーカスウィンドウ、 PointerRoot または、 None を返します。

revert_toウィンドウがビューアブルでなくなった場合の、入力フォーカスを返す場所 を指定します。 RevertToParent、 RevertToPointerRoot または、 RevertToNone を指定することができます。

revert_to_return
現在のフォーカス状態を返します (RevertToParent、 RevertToPointerRoot または、 RevertToNone) 。

time時間を指定します。 timestamp または、 CurrentTime のいずれかを指定することができます。

解説

XSetInputFocus 関数は、入力フォーカスおよび最新のフォーカス変更時間を変更します。 指定された時間が現在の最新のフォーカス変更時間より前の場合、または現 在の X サーバの時間よりも後の場合は、効果がありません。 そうでない場合、最新のフォーカス変更時間は、指定された時間に設定され ます(CurrentTime は、現在の X サーバ時間と置換されます)。 XSetInputFocus は、X サーバに FocusIn および、 FocusOut イベントを発生させます。 focus 引数により、次のことが起こります。

•focus 引数が None の場合、 新しいフォーカスウィンドウが設定されるまで、すべてのキーボードイベン トは捨てられ、 revert_to 引数は無視されます。

•focus 引数がウィンドウの場合、キーボードのフォーカスウィンドウになり ます。 発生したキーボードイベントが、一般にこのウィンドウ、またはその下位ウ ィンドウに通知される場合は、イベントはいつもどおりに通知されます。 そうでない場合は、イベントは、フォーカスウィンドウに関して通知されま す。

•focus 引数が PointerRoot の場合、 フォーカスウィンドウは、各々のキーボードイベント発生時に、ポインタが どのスクリーン上に存在していても、そのスクリーンのルートウィンドウに 動的になろうとします。 この場合、 revert_to 引数は無視されます。 指定されたフォーカスウィンドウは、 XSetInputFocus が呼び出されたときは、ビューアブルでなければなりません。 さもないと、 BadMatch エラーが結果として生じます。 フォーカスウィンドウが後でビューアブルでなくなってしまった場合は、 X サーバは、 revert_to 引数と評価し、次のように新しいフォーカスウィ ンドウを決定します。

•revert_to が RevertToParent の場合は、 フォーカスは親ウィンドウ(または一番近いビューアブルな先祖)に戻り、 新しい revert_to 値が、 RevertToNone になります。

•rvert_to が  RevertToPointerRoot または RevertToNone の場合は、 フォーカスウィンドウは、それぞれ PointerRoot または、 None に戻ります。 フォーカスと X サーバは、 FocusIn および FocusOut イベントを発生するが、 最新のフォーカス変更時間は変わりません。 XSetInputFocus は、 BadMatch、 BadValue および BadWindow エラーを生じることがあります。 XGetInputFocus 関数は、フォーカスウィンドウおよび現在のフォーカス状態を返します。

診断

BadValue ある数値が許容範囲を超えた。 引数の値の範囲が明示されない限り、引数の型によって決まる最大の範囲ま で指定可能です。 選択形式の引数も、このエラーを生じることがあります。

BadWindow
Window 引数の値が定義された Window を指さない。

関連事項

XWarpPointer(3X11)
Xlib − C Language X Interface

NEWS-OSRelease 4.1C

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