Other Alias
XSetClassHint, XGetClassHint, XClassHint書式
XClassHint *XAllocClassHint()
XSetClassHint(display, w, class_hints)
Display *display;
Window w;
XClassHint *class_hints;
Status XGetClassHint(display, w, class_hints_return)
Display *display;
Window w;
XClassHint *class_hints_return;
引き数
- display
- X サーバへの接続を指定する。
- class_hints
- 使用される XClassHint 構造体を指定する。
- class_hints_return
- XClassHint 構造体が返される。
- w
- ウィンドウを指定する。
説明
関数 XAllocClassHint は XClassHint 構造体を割り当て、この構造体へのポインタを返す。 XClassHint 構造体の pointer フィールドは NULL で初期化される点に注意すること。 十分なメモリが確保できない場合、 XAllocClassHint は NULL を返す。 この構造体に対して割り当てられたメモリを解放するには、 XFree を使用すること。The 関数 XSetClassHint は指定したウィンドウのクラスヒントを設定する。 文字列のエンコーディングがホストポータブル文字エンコーディングでない場 合、結果は実装依存である。
XSetClassHint はエラー BadAlloc, BadWindow を起こすことがある。
関数 XGetClassHint は、指定したウィンドウのクラスヒントを、与えられた構造体のメンバに返す。 サーバが返すデータのエンコーディングが Latin ポータブル文字エンコーディ ングならば、関数が返す文字列のエンコーディングはホストポータブル文字エ ンコーディングである。 そうでない場合の結果は実装依存である。 この関数は成功した場合には 0 でないステータスを返し、失敗した場合には ステータスとして 0 を返す。 文字列 res_name と res_class を使い終った後に解放するには、それぞれに 対して XFree を行なうこと。
XGetClassHint はエラー BadWindow を起こすことがある。
プロパティ
- WM_CLASS
- アプリケーションプログラムによってセットされ、ウィンドウマネージャやセッ ションマネージャがリソースデータベースからアプリケーションのリソースを 取得できるようにする。
構造体
XClassHint 構造体の内容を示す。
typedef struct { char *res_name; char *res_class; } XClassHint;
res_name メンバはアプリケーションの名前であり、 res_class はアプリケーションのクラスである。 このプロパティに設定されている名前は、WM_NAME として設定されている 名前とは異なる場合がある点に注意すること。 つまり、WM_NAME はタイトルバーに表示すべきものであり、したがって一時 的な情報を持つことがある(例えば、エディタのバッファの現在のファイル名)。 一方、WM_CLASS の一部として指定される名前は、リソースデータベースから アプリケーションのリソースを取り出す時に使われるアプリケーションの正 式な名前である。
返り値
- BadAlloc
- 要求されたリソースやサーバメモリの割り当てにサーバが失敗した。
- BadWindow
- 引き数 Window の値が、定義されている Window を指していない。