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 がゼロでないウィジェッ ト) されていれば、 を返す。

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

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

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