Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ XwcFreeStringList(3X11) — NEWS-os 4.2.1R

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

XSetTextProperty(3X11)

XStringListToTextProperty(3X11)

XmbTextListToTextProperty(3X11)  —  NEWS-OS Programmer’s Manual

名称

XmbTextListToTextProperty, XwcTextListToTextProperty, XmbTextPropertyToTextList, XwcTextPropertyToTextList, XwcFreeStringList, XDefaultString − テキストリストおよびテキスト属性構造体を変換する

形式

int XmbTextListToTextProperty(display, list, count, style, text_prop_return)
      Display ∗display;
      char ∗∗list;
      int count;
      XICCEncodingStyle style;
      XTextProperty ∗text_prop_return; int XwcTextListToTextProperty(display, list, count, style, text_prop_return)
      Display ∗display;
      wchar_t ∗∗list;
      int count;
      XICCEncodingStyle style;
      XTextProperty ∗text_prop_return; int XmbTextPropertyToTextList(display, text_prop, list_return, count_return)
      Display ∗display;
      XTextProperty ∗text_prop;
      char ∗∗∗list_return;
      int ∗count_return; int XwcTextPropertyToTextList(display, text_prop, list_return, count_return)
      Display ∗display;
      XTextProperty ∗text_prop;
      wchar_t ∗∗∗list_return;
      int ∗count_return; void XwcFreeStringList(list)
      wchar_t ∗∗list; char ∗XDefaultString()

引数

displayX サーバとの接続を指定します。

listNULL 終了のキャラクタ文字列のリストを 指定します。

count指定文字列の数を指定します。

style属性をエンコードする方法を指定します。

text_prop_return
XTextProperty 構造体を返します。

text_prop使用する XTextProperty 構造体を指定します。

list_returnNULL 終了のキャラクタ文字列のリストを 返します。

count_return文字列の数を返します。

list開放する文字列リストを指定します。

解説

XmbTextListToTextProperty および XwcTextListToTextProperty 関数は指定 XTextProperty 値を NULL 終了のテキスト文字列の指定リスト の連結を表す、 NULL で分割された要素の セットに設定します。 最後の NULL は text_prop_return の 値フィールドの最後に格納され、 nitems メンバには含まれません。 関数群は text_prop_return のエンコードフィールド を指定ディスプレイの Atom に設定し、 指定テキストリストを text_prop_return 値フィールド の格納のためのこのエンコーディングに変換します。 スタイル XStringStyle または XCompoundTextStyle が指定されると、 このエンコーディングはそれぞれ、 “STRING” または “COMPOUND_TEXT”となります。 スタイル XTextStyle が指定されると、 このエンコーディングはカレントロケールの エンコーディングとなります。 スタイル XStdICCTextStyle が指定され、 テキストが完全に STRING に変換できる場合には、 このエンコーディングは “STRING” となります。 その他の場合には、 “COMPOUND_TEXT” となります。 新しい値の文字列に対して十分なメモリがない場合、 関数は XNoMemory を返します。 カレントロケールがサポートされてない場合、 関数群は XLocaleNotSupported を返します。 どちらのエラーの場合にも、 関数群は text_prop_return を 設定しません。 関数群が XLocaleNotSupported を返さないことを保証されている場合、 XSupportsLocale を使用します。 提供するテキストが指定エンコーディングに 完全には変換されない場合、 関数群は変換不可のキャラクタの数を返します。 変換不可のキャラクタそれぞれは インプリメンテーション定義および エンコーディング特有のデフォルト文字列に 変換されます。 そうでなければ、 関数群は Success を返します。 XStringStyle を除いて全てのスタイルへの 完全な変換が保証されていることに注意してください。 値フィールドに対する格納データを 開放するためには、 XFree を使用します。 XmbTextPropertyToTextList および XwcTextPropertyToTextList 関数は指定 XTextProperty 構造体の NULL で分けられた要素を表す カレントロケールのテキスト文字列のリストを 返します。 text_prop 内のデータは形式 8 とすること。 属性の複数要素 (例えば、分離されたテキストを選択した際の文字列) は NULL によって分けられます。 属性の内容は NULL 終了にする必要はありません。 また、どの終了 NULL も text_prop.nitems に含まれるべきでは ありません。 リストおよびその要素に対してメモリが十分 でない場合、 XmbTextPropertyToTextList および XwcTextPropertyToTextList は XNoMemory を返します。 カレントロケールがサポートされてない場合、 その関数は XLocaleNotSupported を返します。 そうでなく、 text_prop のエンコーディングフィールド がカレントロケールのエンコーディングに 完全には変換されない場合、 関数群は XConverterNotFound を返します。 サポートされたロケールの場合、 カレントロケール(しかし、実際のテキストには 変換できないキャラクタが含まれていることがある)に対して XSupportsLocale が True を返した場合、 COMPOUND_TEXT、STRING、 またはカレントロケールのエンコーディングからの コンバータの存在は保証されています。 その他のエンコーディングの変換は インプリメンテーション依存です。 以上のようなエラーの場合、 関数群はどのような返り値も設定しません。 そうでなければ、 XmbTextPropertyToTextList および XwcTextPropertyToTextList は NULL 終了のテキスト文字列のリストを list_return に返し、 テキスト文字列の数を count_return に返します。 text_prop の値フィールドがカレントロケールの エンコーディングに完全には変換しない場合、 関数は変換できないキャラクタの数を返します。 変換できないキャラクタごとに、 カレントロケールに特有のカレントロケールの 文字列に変換されます。 この文字列の値を獲得するためには、 XDefaultString を使用します。 そうでなければ、 XmbTextPropertyToTextList および XwcTextPropertyToTextList は Success を返します。 XmbTextPropertyToTextList によって返されたリストに 関する格納データおよびその内容を 開放するためには、 XFreeStringList を使用します。 XwcTextPropertyToTextList によって返されたリストの格納データ およびその内容を開放するためには、 XwcFreeStringList を使用します。 XwcFreeStringList 関数は XwcTextPropertyToTextList によって割り当てられたメモリを開放します。 XDefaultString 関数はテキスト変換 (例えば、 XmbTextListToTextProperty) に関して Xlib が使用するデフォルト文字列 を返します。 デフォルト文字列は、 変換できない文字列がテキスト変換時に 見つけられたときに 出力されるカレントロケールの文字列です。 XDefaultString によって返された文字列が 空の文字列 ("") の場合、 変換されたテキストではキャラクタは出力されません。 XDefaultString は NULL を返しません。 XDefaultString によって返された文字列がテキスト 秒出の際のデフォルト文字列に 依存しません。 XFontSet に関するデフォルト文字列を獲得するためには、 XCreateFontSet を参照してください。 無効コードポイントがどの Xlib 関数にも 提供される手順については、 未定議です。 返された文字列は NULL 終了です。 それは Xlib によって所有され、 クライアントによっては変更、開放されるべきでは ありません。 カレントロケールが変更された後なら、開放できます。 開放されるまで、 Xlib によっては変更されません。

構造体

XTextProperty 構造体の内容を以下に示します。

typedef struct {
unsigned char ∗value;/∗ 属性データ ∗/
Atom encoding;/∗ 属性のタイプ ∗/
int format;/∗ 8、16、または 32 ∗/
unsigned long nitems;/∗ 値内の項目数 ∗/
} XTextProperty;

XICCEncodingStyle 構造体の内容を以下に示します。

#define XNoMemory −1
#define XLocaleNotSupported −2
#define XConverterNotFound −3

typedef enum {
XStringStyle,/∗ STRING ∗/
XCompoundTextStyle,/∗ COMPOUND_TEXT ∗/
XTextStyle,/∗ オーナエンコーディングのテキスト (カレントロケール) ∗/
XStdICCTextStyle/∗ STRING、または COMPOUND_TEXT ∗/
} XICCEncodingStyle;

関連事項

XSetTextProperty(3X11), XStringListToTextProperty(3X11)
Xlib − C Language X Interface

NEWS-OSRelease 4.2.1R

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026