XtRealizeWidget(3Xt)

名前
XtRealizeWidget, XtIsRealized, XtUnrealizeWidget - ウィジェットのリアライズ、リアライズ解除を行う

書式
void XtRealizeWidget(w)
      Widget w;

Boolean XtIsRealized(w)
      Widget w;

void XtUnrealizeWidget(w)
      Widget w;

引き数

w   ウィジェットを指定する。

説明
ウィジェットが既にリアライズされていれば、 はすぐに復帰する。 リアライズされていなければ以下の処理を実行する:

•   ウィジェットのトランスレーションテーブルにある全てのアクションの名前を 手続きに対応付ける(セクション 10.1.2 を参照)。

•   管理する子を 1 つ以上持つ各々の composite ウィジェットに対して、 change_managed 手続きを呼ぶ。これは、指定されたウィジェットをルートと したウィジェットツリーを、下から上への順に実行する。

•   ウィジェットフィールドから得た情報で満たされた 構造体を生成し、ウィジェットの realize 手続きを呼ぶ。これはウィジェット の特定の属性を加え、さらに X のウィンドウを生成する。

•   ウィジェットが のサブクラスでないならば、 はここで戻る。サブクラスであれば、続けて以下を実行する：

    -   ウィジェットに管理された子を再帰的に降りながら realize 手続きを呼ぶ。 子をインスタンス化する Primitive ウィジェットは、その子をリアライズする責 任がある。

    -   mapped_when_managed が になっている、管理している子のウィンドウの全てをマッピングする。 (管理されているウィジェットの mapped_when_managed が である場合、ウィジェットは表示領域が割り当てられるものの、表示はされな い。ある人々は、ある特定の状態を表示するためにこれを好むようである)

もしウィジェットがトップレベルのシェルウィジェット (つまり親を持たない) であり、かつ mapped_when_managed が であれば、 はウィジェットのウィンドウをマッピングする。

関数は、ウィジェットがすでにリアライズ (X window ID が 0 でない ウィジェット) されていれば、 を返す。

ウィジェット手続きの中には (例えば、set_values)、そのウィジェットが実 体化した後、異なる動作をするものがある。

関数は、既存のウィジェットとその子のウィンドウを破棄する (再帰的にウィ ジェットツリーを降りながら) 。 後から再びウィンドウを生成する場合は、再び を呼べばよい。 ウィジェットが管理されていた場合、そのウィンドウが解放される前に自動的 に非管理状態となる。

関連項目
XtManageChildren(3Xt)
X ツールキット イントリンシクス - C 言語インターフェイス
Xlib - C 言語 X インターフェイス