| ||||||||||
| MINERVA superseeded IF/Prolog.
Please see
http://www.ifcomputer.co.jp/MINERVA
for details.
We discontinued to sell IF/Prolog Dec 31. 2003. For current customers, we continue to provide professional support for IF/Prolog until Dec 31, 2008. ToolkitからPrologへの変換は、xtGetValues/2を使用する場合にのみ必要となります。この述語は、各リソースに対する変換手続きを呼び出す手続きとして実現されています。これらのコンバータは、リソース名とその値が必要とされるwidgetを取得します。リソース値は、コンバータがXtのルーチンXtGetValues()を呼び出すことによってwidgetから直接取り出されます。そして、必要とされるProlog表現への変換が行なわれ、その結果が返されます。 void FromToolkitToPrologConverter(name, widget, value_ptr) char *name; Widget widget; TERM *value_ptr; Prolog表現への変換では扱い易くするために、整数定数をアトムに置き換えることがあります。 例題: 型"Boolean"のリソースに対するコンバータ void IFXtTPCvtBoolean(name, widget, value_ptr) char *name; Widget widget; TERM *value_ptr; { Arg arg 1 ; Boolean bool; IFXtCvtError = NULL; XtSetArg(arg 0 , name, &bool ); XtGetValues(widget, arg, 1 ); *value_ptr = (bool ? StrAt("true") : StrAt("false")); } | ||||||||||
|
| 戻る> |
|