Xtoolkit側では、リソース値はXtSetVaklues()のようなXtルーチンによって取り扱われた時に特別な型(XtArgVal)にキャスト(変換)されます。IF/Prologからリソースを設定する場合にも同様の変換が必要になります。PrologからXtoolkitへの変換を行なうコンバータは、IF/PrologのTERMを入力として受け取り、変換したりリソース値をXtArgValとして返します。...
Move to
Next Prev
Up Top
See also
PrologからToolkitへの変換
文字列変換の使用
ToolkitからPrologへの変換
IF Computer > IF/Prolog > Manuals > IF/Prolog V4.1 マニュアル > IF/Prolog Interfaces > OSF/Motifインタフェースマニュアル > Motif IF/Prologの拡張 > Motif IF/PrologへのWidgetsの追加 > 新しいwidgetを追加するための作業 > コンバ−タ > PrologからToolkitへの変換

PrologからToolkitへの変換

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.

Xtoolkit側では、リソース値はXtSetVaklues()のようなXtルーチンによって取り扱われた時に特別な型(XtArgVal)にキャスト(変換)されます。IF/Prologからリソースを設定する場合にも同様の変換が必要になります。PrologからXtoolkitへの変換を行なうコンバータは、IF/PrologのTERMを入力として受け取り、変換したりリソース値をXtArgValとして返します。

void FromPrologToToolkitConverter(term, arg_val) Term term; XtArgVal *arg_val;

コンバータが呼び出された時点で、termのProlog型はリソーステーブルIFXtResourceTable[]を参照して決定されます。(対応するリソースの4番目の項目)。以下のうちのいずれかになります。

ArgAtom Prologのアトム ArgInteger Prologの整数 ArgFloat Prologの倍精度浮動小数 ArgList Prologのリスト ArgAtomOrList Prologのアトムあるいはリスト ArgStruct Prologの複合項

変換手続きでは、引き渡されたProlog表現に対応するリソース値を計算してそれをXtArgVal()にキャストし、それを出力パラメータarg_valに渡さなければなりません。

リソースの計算は、PrologからCへの変換、メモリの割り当て、Xlib関数の呼び出しによるXリソースの作成などのアクションから成っています。

変換が失敗した場合には、グローバル変数IFXtErrorがエラーを表示する文字列、通常は"illegal_<type>_resources"に設定されなければなりません。変換ルーチンがすでに呼び出された後にIFXtErrorが設定された場合には、そのエラー文字列と共に例外処理が引き起こされます。

例題: 型"Dimension"のリソースに対するコンバータ

void IFXtPTCvtDimension(value, arg_val) TERM value; XtArgVal *arg_val; { *arg_val = (XtArgVal) IntPC(value); }

read on...
IF/Prolog by Siemens
Language
English
Japanese
German
Server
USA
Japan
Site Access
Local Index
Local Contents
Site Contents
Site Index
Printer Friendly
For imode
For PDA
Search
document: http://www.ifcomputer.co.jp/IFProlog/Manuals/v4.1/advanced_feature/osf_motif/motifext/adwidget/incneww/convert/ptotco/home_en.html
published 2008/12/1 update 1995/11/7 (c) 1996-2006 IF Computer Japan
IF Computer 5-28-2 Sendagi, Bunkyo-ku Tel +81-3-5814-3352 start (AT) ifcomputer.com
Customer Support Tokyo 113-0022 Japan   http://www.ifcomputer.com
scroll to top managed with ubiCMS