|
関数 mframe() は plist 中のパラメータを持つ新しいフレームを作る。 plist は NULL でも良い。
plist に現われるキーのうちどれが認識されるかはウィンドウシステム に依存する。
以下のキーは常に認識される。
-
Mdevice. 値は Mx, Mgd, Mnil のいずれかでなくてはならない。
値が Mx ならば、新しいフレームは X ウィンドウシステム用である。こ のフレームと共に指定された引数 MDrawWindow は、 Window 型でな くてはならない。フレームは読み書きともに可能であり、すべてのGUI 関 数が使用できる。
値が Mgd ならば、新しいフレームは GD ライブラリのイメージオブジェ クト用である。このフレームと共に指定された引数 MDrawWindow は、 gdImagePtr 型でなくてはならない。フレームは書き出し専用であり、 minput_ で始まる名前の関数は使用できない。
値が Mnil ならば、新しいフレームは, null デバイス用である。このフ レームは読み書きできないので、引数 MDrawWindow を必要とするmdraw_ で始まる名前の関数や、minput_ で始まる名前の関数は使用できない。
-
Mface. 値は MFace へのポインタでなくてはならない。
この値はフレームのデフォルトのフェースとして用いられる。
これらのキーに加え、Mdevice のキーが Mx である場合に限り以下のキー も認識される。以下のキーはルートウィンドウと、フレームで利用できる drawable の深さを指定する。
-
Mdrawable. 値は
Drawable 型でなくてはならない。
キー Mdisplay を持つパラメータも指定されている必要がある。生成さ れたフレームは、指定されたディスプレイ上の指定された drawable と同 じルートウィンドウと深さを持つ drawable に用いられる。
このパラメータがある場合には、Mscreen をキーとするパラメータは無 視される。
-
Mwidget. 値は
Widget 型でなくてはならない。
生成されたフレームは、指定したウィジェットと同じルートウィンドウと 深さを持つ drawable に用いられる。
キー Mface を持つパラメータがなければ、デフォルトのフェースはこの ウィジェットのリソースから作られる。
このパラメータがある場合には、Mdisplay, Mscreen, Mdrawable, Mdepth をキーとするパラメータは無視される。
-
Mdepth. 値は
unsigned 型でなくてはならない。
生成されたフレームは、指定した深さの drawable に用いられる。
-
Mscreen. 値は
(Screen *) 型でなくてはならない。
生成したフレームは、指定したスクリーンと同じルートウィンドウを持ち、 スクリーンのデフォルトの深さと同じ深さを持つ drawable に用いられる。
このパラメータがある場合には、Mdisplay をキーとするパラメータは無 視される。
-
Mdisplay. 値は
(Display *) 型でなくてはならない。
生成されたフレームは、指定したディスプレイのデフォルトスクリーンと 同じルートウィンドウと同じ深さを持つdrawables に用いられる。
-
Mcolormap. 値は
(Colormap) 型でなくてはならない。
生成されたフレームは、指定したカラーマップを使用する。
-
Mfont. 値は、Mx, Mfreetype, Mxft のいずれか。
生成されたフレームは指定したフォントバックエンドを使用する。値が Mx であれば X のコアフォント、Mfreetype であれば FreeType でサポー トされているローカルフォント、Mxft であれば Xft ライブラリ経由で 用いるローカルフォントを使用する。複数のフォントバックエンドを使用 したい場合には、このパラメータを複数回、異なる値で指定することがで きる。指定したバックエンドがサポートされていないデバイスでは、この パラメータは無視される。
このパラメータが無い場合には、デバイスでサポートされているすべての フォントバックエンドを利用する。
- 戻り値:
- 成功すれば mframe() は新しいフレームへのポインタを返す。そうでなけ れば
NULL を返す。
|