MrmRegisterNames(3XM) — NEWS-OS Programmer’s Manual
名称
MrmRegisterNames − uil で参照される名前 (たとえば uid コールバック関数の名前や uid 識別子名) に関する値を記録します。
形式
#include <Xm/Intrinsics>
#include <Mrm/MrmPublic.h>
Cardinal MrmRegisterNames(register_list, register_count)
MrmRegisterArglist register_list;
MrmCount register_count;
解説
MrmRegisterNames 関数は、 MRM がアクセスするための名前のベクタと関連する値を記録します。 この値は、コールバック関数、ユーザが定義したデータへのポインタ、その他あらゆる値になりえます。 提供される情報は、uid ファイルに現れるシンボルによる参照を実行時の値にするのに用いられます。 コールバックに関していえば、この情報は Motif ツールキットが要求するプロシージャアドレスを与えます。 uil の中で識別子として用いられる名前に関していえば、この情報はアプリケーションが必要とするなんらかの実行時のマッピングを与えます。
register_list記録される名前の名前/値の組のリストを指定します。 名前は大文字小文字を区別する必要があり、ナルで終端する ASCII 文字列です。 値は 32 ビット値で、名前がコールバック関数の場合はプロシージャアドレスと解釈され、それ以外は解釈されません。
register_count
register_list の要素の個数を指定します。 リスト中の名前は大文字と小文字を区別する必要があります。 リストは順番を考えても考えなくても構いません。 MrmRegisterNames を用いて記録されたコールバック関数は、正規のコールバックでも生成コールバックでも構いません。 正規のコールバックは Motif ツールキットとユーザの要求事項によって決められた宣言形式を持っています。 生成コールバックは他のコールバックと同じフォーマットです。 void CallBackProc(widget_id, tag, callback_data)
Widget ∗widget_id;
Opaque tag;
XmAnyCallbackStruct ∗callback_data;
widget_id(コールバック関数におけるのと同じ) コールバックを行う widget の widget ID を指定します。
tag(コールバック関数におけるのと同じ) タグの値を指定します。
callback_datawidget 固有のデータ構造を指定します。 このデータ構造には最低 2 つの要素、イベントとリーズンがあります。 リーズンはいつも XmCRCreate が設定します。 widget 名と親 widget は、widget_id でアクセスできる widget レコードから利用できることに、注意してください。
リターン値
この関数は、状態を示す以下の定数のうちのいずれかを返します。
MrmSUCCESS関数が正常に実行された。
MrmFAILUREメモリの割り当てが失敗した。
NEWS-OSRelease 4.2.1R