XReparentWindow(3X11)

名前
XReparentWindow - ウィンドウの親の変更

書式
XReparentWindow(display, w, parent, x, y)
      Display *display;
      Window w;
      Window parent;
      int x, y;

引き数

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

parent
    親ウィンドウを指定。

w   ウィンドウを指定。

x

y   新しい親ウィンドウ内の位置のx, y 座標を指定。

説明
指定したウィンドウがマップされた場合、 はこのウィンドウに対して自動的に を実行し、ウィンドウ階層内の現在位置より取り除き、指定した親ウィンドウ の子として挿入する。 このウィンドウは兄弟ウィンドウに対して、スタック順では一番上に配置され る。

指定したウィンドウの親を変えた後、 は X サーバに イベントを生成させる。 このイベントで返される override_redirect メンバには、ウィンドウの対応 する属性がセットされる。 このメンバが にセットされている場合、ウィンドウマネージャは通常このウィンドウを無視 すべきである。 最後に、もし指定したウィンドウが最初からマップされていれば、X サーバは このウィンドウに対して自動的に リクエストを実行する。

以前に他のウィンドウに隠されていたウィンドウに対しては、X サーバは通常 の露出(exposure)の処理を実行する。 X サーバは最後の リクエストで即座に隠蔽される最初の リクエストからの領域に対しては イベントを生成しない。 エラー は以下の場合に起こる。

•   新しい親ウィンドウが古い親ウィンドウと同じスクリーン上にない。

•   新しい親ウィンドウが指定したウィンドウ自身かその下位ウィンドウである。

•   新しい親ウィンドウが であり、そのウィンドウが でない。

•   指定したウィンドウが の背景を持ち、新しい親ウィンドウが指定した親ウィンドウと同じ深さでない。

はエラー を起こすことがある。

返り値

引き数 Window の値が、定義されている Window を指していない。

関連項目
XChangeSaveSet(3X11)
Xlib - C Language X Interface