MrmFetchWidgetOverride(3XM) — NEWS-OS Programmer’s Manual
名称
MrmFetchWidgetOverride − インデックスのついた (uil 名のついた) アプリケーション widget をフェッチします。 uil でこのアプリケーション widget に指定した引数はオーバーライドされます。
形式
#include <Xm/Intrinsics>
#include <Mrm/MrmPublic.h>
Cardinal MrmFetchWidgetOverride(hierarchy_id, index, parent_widget, override_name,
override_args, override_num_args, widget, class)
MrmHierarchy hierarchy_id;
String index;
Widget parent_widget;
String override_name;
ArgList override_args;
Cardinal override_num_args;
Widget ∗widget;
MrmType ∗class;
解説
MrmFetchWidgetOverride 関数は MrmFetchWidget の拡張版です。 MrmFetchWidget と異なるのは、これを呼び出すと widget の名称や引数をオーバーライドできるという点です。 それに対して MrmFetchWidget は uid ファイルかまたはデフォルトの機構のうちの 1 つからそれらをとってきます。 すなわち、オーバーライド引数リストは uid ファイルで定義された引数に限定されないということです。 オーバーライド引数はこの関数でフェッチされて返される widget のみに適用されます。 その子 (サブツリー) は オーバーライドパラメータを受け取りません。
hierarchy_idインターフェース定義を含む uid 階層構造の ID を指定します。 hierarchy_id は MrmOpenHierarchy を呼び出したときのリターン値です。
indexフェッチする widget の uil 名を指定します。
parent_widget親 widget の ID を指定します。
override_namewidget 名をオーバーライドする名称を指定します。 widget 名をオーバーライドしない場合は、この値に NULL を使ってください。
override_argsオーバーライド引数リストを、XtCreateWidget で与えられるのとまったく同様に (conversion complete など) 指定します。 引数リストをオーバーライドしない場合は、この値に NULL を使ってください。
override_num_args
override_args の引数の数を指定します。
widget生成された widget の ID を返します。 MrmFetchWidgetOverride を呼び出したときにこれが NULL でなかった場合、MRM は widget がすでに生成されたいるものとみなし、MrmFetchWidgetOverride は MrmFAILURE を返します。
classMRM の widget クラスを識別するクラスコードを返します。 たとえば、メインウィンドウ widget の widget クラスコードは MRMwcMainWindow です。 MRM widget クラスコードを識別するリテラルは Mrm.h で定義されています。
リターン値
この関数は、状態を示す以下の定数のうちのいずれかを返します。
MrmSUCCESS関数が正常に実行された。
MrmNOT_FOUND
widget が uid 階層構造の中に見つからなかった。
MrmFAILURE関数の実行が失敗した。
関連事項
NEWS-OSRelease 4.1C