sitelogo
ドローwidgetクラスによって追加されるリソース
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.

xmDrawWidgetClassはxmManagerWidgetClassのサブクラスなので、対応するリソースも有効です。以下のリソースが、ドローwidgetクラスによって定義されます。

名前 クラス RepType デフォルト値

allocMode AllocMode AllocMode XtDrawDontAllocButFree asciiCallback Callback XtCallbackList NULL bitmap0 Pixmap Pixmap None . . . . . . . . bitmap9 Pixmap Pixmap None buttonCallback Callback XtCallbackList NULL clearBeforeRepaint Boolean Boolean True color0 Color Pixel XtDefaultForeground . . . . . . . . color9 Color Pixel XtDefaultForeground compressMotion Boolean Boolean True flushAfterDrawing Boolean Boolean False font Font XFontStruct* XtDefaultFont font0 Font XFontStruct* XtDefaultFont . . . . . . . . font9 Font XFontStruct* XtDefaultFont motionCallback Callback XtCallbackList NULL readDumpToPixmap Boolean Boolean True refreshFromPixmap Boolean Boolean True repaintGrownSize Boolean Boolean True repaintBeforeDrawingIfExposed Boolean Boolean False saveOpList Boolean Boolean True savingOps Boolean Boolean True writingPixmap Boolean Boolean True

allocMode

IF/Prologからドロ−Widgetを使用する場合には、このリソ−スを変更することはできません。これはアプリケ−ションプログラムとwidgetのどちらが、点、線、セグメント、長方形のような記憶領域の配列を制御するかを決定します。このリソ−スがXtDrawDontAllocButFree(デフォルト値)に設定されている場合には、クライアントが必要なメモリを割り当てます。しかし使用されなくなれば、widgetがこれを解放します。XtDrawAllocAndFreeに設定されている場合には、widgetは自分のメモリ領域にデ−タを強制的にコピ−します。XtDrawDontAllocButFreeでは、アプリケ−ションプログラムがすべてのメモリ割り当てに対して責任をもちます。このリソ−スは、生成時以外は設定できません。

asciiCallback

これは、アクション'asciiCallback()'によってそのコ−ルバックが呼び出されるコ−ルバックリストです。アクションはキ−イベントによって起動されなければなりません。この場合コ−ルバックの呼び出しデ−タは、押し下げた(あるいは離した)キ−のASCIIコ−ド表現(整数)になります。そうでない場合は、呼び出しデ−タは -1 になります。

bitmap0 ... bitmap9

これらのリソ−スを通して設定されるビットマップは、GCのタイルやスティップルとして設定できます。またコピ−ソ−スとしても使うことができます。

buttonCallback

これは、アクション'buttonCallback()'によってそのコ−ルバックが呼び出されるコ−ルバックリストです。アクションはボタンイベントによって起動されなければなりません。イベントがボタンイベントの場合には、コ−ルバックの呼び出しデ−タは押し下げた(あるいは離した)ボタンの番号(整数)になります。そうでない場合には、呼び出しデ−タは -1 になります。

clearBeforeRepaint

このリソ−スは、ウインドウを(エクスポ−ズや明示的な再描画によって)再描画する前にクリアすべきかどうかを制御します。通常はウインドウをクリアしない方が見やすいのですが、コピ−領域あるいはラバ−モ−ドが使われている場合には、'clearBeforeRepaint'をtrueに設定する必要があります。

color0 ... color9

これらのリソ−スを通して設定されるピクセル値は、GCあるいはタイルのいずれかのフォアグラウンドあるいはバックグラウンドとして設定できます。color0とcolor1は、初期化の時にバックグラウンドとフォアグラウンドからコピ−されます。

compressMotion

このリソ−スは、モ−ションイベントの圧縮を行うかどうかを制御します。圧縮は性能向上のため、デフォルトで有効となっています。ポインタの動きをより細かく追跡すべき場合には、無効にして下さい。

flushAfterDrawing

このリソ−スは、各オペレ−ション後にウインドウへの出力をフラッシュすべきかどうかを制御します。通常はMainLoop中で自動的にフラッシュが起きるので、これは必要ありません。即時描画が必要な場合には、このリソ−スをTrueに設定して下さい。

foreground

グラフィックス・コンテクストのフォアグラウンド色は、初めにこの値に設定されます。この色は初期化の時にcolor1としても設定されます。

font

グラフィックス・コンテクストのフォントは、初めにこの値に設定されます。このフォントは、初期化の時にfont0としても設定されます。

font0 ... font9

これらのリソ−スを通して設定されるフォントは、GCのフォントとして設定できます。font0は、初期化の時にリソ−スfontからコピ−されます。

motionCallback

これは、アクション'motionCallback()'によってそのコ−ルバックが呼び出されるコ−ルバックリストです。アクションはモ−ションイベントによって起動されなければなりません。この場合、コ−ルバックの呼び出しデ−タは 0 になります。他の型のイベントの場合には、呼び出しデ−タは -1 になります。

repaintBeforeDrawingIfExposed

このリソ−スは、描画オペレ−ションの前にエクスポ−ズイベントをディスパッチするかどうかを制御します。これは、大量の描画をするために長時間メインル−プに戻れない場合に便利です。

ドローwidgetのリリース1.1では、ピックスマップあるいはオペレーションリストを使って描画内容を格納したり更新できます。2つのメカニズムのうちどちらが使われるかは、新しいいくつかのリソースによって制御されます。さらに新しいリソースは、ウインドウ・ダンプの読み方も制御します。

refreshFromPixmap

デフォルトはtrueで、すべての描画をウインドウと内部ピックスマップに対して強制的に並行に行います。更新は、このピックスマップから行われます。xtDrawRepaint/1だけが最終的に格納されたオペレーションリストを使用します。このリソースがfalseの場合には、オペレーションリストからの再描画によって更新が行われます。このリソースは、生成時にしか設定できません。

repaintGrownSize

このリソースは、refreshFromPixmap, saveOpListが共にtrueの場合にのみ有効となります。'repaintGrownSize'はウインドウの拡大時に、ウインドウの中身をオプションリストから再描画すべきかどうかを制御します。これによって、古いボーダ(境界)の外側の部分も更新することができます。

saveOpList

このリソースはドローwidget上で実行されたすべてのオペレーションを、オペレーションリストに格納するかどうかを制御します。refreshFromPixmapがfalseの場合、あるいはrepaintGrownSizeがtrueでウインドウが拡大された場合には、オペレーションリストから更新が行われます。オペレーションリストからのオペレーションは、xtDrawRepaint/1を使って明示的に更新することができます。デフォルト値はonです。

savingOps

このリソースは最初にonに設定されており、オペレーションをオペレーションリストに格納するのを一時保留するのに使用します。

writingPixmap

このリソースは最初にonに設定されており、更新ピックスマップへの書き込みを一時保留するのに使用します。

readDumpToPixmap

このリソースは、更新時に毎回xtDrawReadWindowDump/8を呼び出すか、あるいはxtDrawReadWindowDump/8が読み込んだ画像をピックスマップに格納し、更新時にその画像をコピーするかを切り換えます。デフォルトの設定は、ダンプをピックスマップに読み込むようになっています。


Up read on...
scroll to top managed with ubiCMS