Other Alias
XStringListToTextProperty, XTextPropertyToStringList, XFreeStringList書式
Status XStringListToTextProperty(list, count, text_prop_return)char **list;
int count;
XTextProperty *text_prop_return;
Status XTextPropertyToStringList(text_prop, list_return,
count_return)
XTextProperty *text_prop;
char ***list_return;
int *count_return;
void XFreeStringList(list)
char **list;
引き数
- count
- 文字列の数を指定する。
- count_return
- 文字列の数が返される。
- list
- 解放する文字列のリストを指定する。
- list
- NULL 文字で終わる文字列のリストを指定する。
- list_return
- NULL 文字で終わる文字列のリストが返される。
- text_prop
- 使われる XTextProperty 構造体を指定する。
- text_prop_return
- XTextProperty 構造体が返される。
説明
関数 XStringListToTextProperty は、指定された文字列のリストの要素を繋げた値を指定された XTextProperty に設定する。 設定される値は STRING 型(フォーマット 8)であり、元のそれぞれの文字列は NULL で終わる。 追加の NULL バイト(これは nitems メンバの数には入らない)は、 text_prop_return の value フィールドの最後に格納される。 文字列のエンコーディングは STRING であるものと(検査なしに)想定される。 新しい文字列に割り当てる十分なメモリがなかった場合、 XStringListToTextProperty は XTextProperty 構造体のどのフィールドにも値を設定せず、ステータスとして 0 を返す。 そうでない場合、この関数は 0 でないステータスを返す。 value フィールドのメモリを解放するには XFree を使用すること。関数 XTextPropertyToStringList は指定した XTextProperty 構造体が持つ要素群(NULL で区切られている)の内容を表す文字列のリストを 返す。 text_prop 内のデータは STRING 型かつフォーマット 8 でなければならない。 プロパティに複数個の要素が含まれる場合(例えば、細切れになったテキスト セレクションに含まれている文字列)は NULL (エンコーディング 0)で区切ら れている。 プロパティの内容の終端は NULL ではない。 リストとその要素に割り当てる十分なメモリがなかった場合、 XTextPropertyToStringList は変数に内容を設定せず、ステータスとして 0 を返す。 そうでない場合、この関数は 0 でないステータスを返す。 リストとその内容のメモリを解放するには XFreeStringList を使用すること。
関数 XFreeStringList は XmbTextPropertyToTextList, Xutf8TextPropertyToTextList, XTextPropertyToStringList が割り当てたメモリと、 XCreateFontSet が割り当てた不足している文字集合のリストを解放する。
構造体
XTextProperty 構造体の内容を以下に示す。
typedef struct { unsigned char *value; Atom encoding; int format; unsigned long nitems; } XTextProperty;