XWithdrawWindow(3) トップレベルウィンドウを操作する

Other Alias

XIconifyWindow, XReconfigureWMWindow

書式

Status XIconifyWindow(display, w, screen_number)

      Display *display;

      Window w;

      int screen_number;

Status XWithdrawWindow(display, w, screen_number)

      Display *display;

      Window w;

      int screen_number;

Status XReconfigureWMWindow(display, w, screen_number, value_mask, values)

      Display *display;

      Window w;

      int screen_number;

      unsigned int value_mask;

      XWindowChanges *values;

引き数

display
X サーバへの接続を指定する。
screen_number
ホストサーバ上の適切なスクリーン番号を指定する。
value_mask
構造体の情報を使ってどの値をセットするのかを指定する。 このマスクは有効なウィンドウ設定ビット値のビットごとの論理和である。
values
XWindowChanges 構造体を指定する。
w
ウィンドウを指定する。

説明

関数 XIconifyWindow は最初の要素が IconicState (Inter-Client Communication Conventions Manual の 4.1.4 節に説明 がある)であり、引き数 w のウィンドウが設定された
 WM_CHANGE_STATE  ClientMessage イベントを指定されたスクリーンのルートウィンドウに送る。送る際の フォーマットは 32 であり、イベントマスクには SubstructureNotifyMask| SubstructureRedirectMask が設定される。 ウィンドウマネージャはこのメッセージを受け取ることを選択でき、もし ウィンドウが通常の状態ならば、このメッセージはウィンドウを通常の状態か らアイコン状態に変化させるリクエストとして扱ってよい。 WM_CHANGE_STATE プロパティを取得できなかった場合、 XIconifyWindow はメッセージを送信せず、ステータスとして 0 を返す。 この関数はクライアントメッセージの送信に成功した時に 0 でないステータ スを返し、失敗した場合にはステータスとして 0 を返す。

関数 XWithdrawWindow は指定したウィンドウをアンマップし、指定したスクリーンの ルートウィンドウに人工的な UnmapNotify イベントを送る。 ウィンドウマネージャはこのメッセージを受け取ることを選択し、 このメッセージをウィンドウをアンマップ状態に変化させるリクエストとして 扱ってよい。 ウィンドウがアンマップ状態にある時は、通常のウィンドウもアイコンも画面 上には現われない。 UnmapNotify イベントを正常に送信できた場合は、この関数は 0 でないステータスを返し、 そうでない場合はステータスとして 0 を返す。

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

関数 XReconfigureWMWindow は指定したトップレベルウィンドウに ConfigureWindow リクエストを発行する。 スタックのモードが変化してリクエストが BadMatch エラーで失敗した場合には、このエラーは Xlib にトラップされ、同じ設定 パラメータを持つ人工的な ConfigureRequestEvent イベントが指定したウィンドウのルートウィンドウに送られる。 ウィンドウマネージャはこのイベントを受け取ることを選択し、このイベント を指定したウィンドウの構成を変えるリクエストとして扱ってもよい。 リクエストやイベントを正常に送信できた場合、この関数は 0 でない ステータスを返し、そうでなければステータスとして 0 を返す。

XReconfigureWMWindow はエラー BadValue, BadWindow を起こすことがある。

返り値

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