---
name: "XmCvtTextPropertyToXmStringTable"
section: "3"
platform: "linux"
package: "openmotif"
version: "2.3.8-4"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/XmCvtTextPropertyToXmStringTable"
---

# XmCvtTextPropertyToXmStringTable(3)

A function that converts from a TextProperty Structure to a StringTable

## NAME

**XmCvtTextPropertyToXmStringTable** — A function that converts from a TextProperty Structure to a StringTable

## SYNOPSIS

```
#include <Xm/Xm.h>
int XmCvtTextPropertyToXmStringTable (display, text_prop, string_table_return, count_return)
        Display *display;
        XTextProperty   *text_prop;
        XmStringTable   *string_table_return;
        int     *count_return;
(void)
```

## DESCRIPTION

**XmCvtTextPropertyToXmStringTable** converts the specified **XTextProperty** structure into an **XmStringTable**, as follows:

- •

  If the encoding member of *text\_prop* is the Atom **STRING**, each returned **XmString** has a tag of "ISO8859-1" and a text type of **XmCHARSET\_TEXT**.

- •

  If the encoding member of *text\_prop* is the encoding of the current locale, and if that encoding is not **STRING**, each returned **XmString** has a tag of **\_MOTIF\_DEFAULT\_LOCALE** and a text type of **XmMULTIBYTE\_TEXT**.

- •

  If the encoding member of *text\_prop* is other than **STRING** or the encoding of the current locale, the contents of the returned compound strings are implementation dependent.

If conversion depends on the locale and the current locale is not supported, the function returns **XLocaleNotSupported**. If conversion to the encoding of the current locale is required and if the locale is supported but no converter is available for the encoding specified in *text\_prop*, the function returns **XConverterNotFound**. For supported locales, existence of a converter from **COMPOUND\_TEXT**, **STRING**, **UTF8\_STRING**, or the encoding of the current locale is guaranteed if **XSupportsLocale** returns True for the current locale (but the actual text may contain unconvertible characters). Conversion of other encodings to the encoding of the current locale is implementation dependent. In all of these error cases, the function does not set any return values.

If an element of the value member of *text\_prop* is not convertible to **XmString**, the corresponding entry in the returned **XmStringTable** will be NULL, and **XmCvtTextPropertyToXmStringTable** returns Success.

To free the storage for the **XmStringTable** and its *count\_return* compound strings returned by this function, first free each **XmString** in the table using **XmStringFree**, and then free the **XmStringTable** itself using **XtFree**.

- *display*

  Specifies the connection to the X server.

- *text\_prop*

  Specifies a pointer to the **XTextProperty**. The format member of *text\_prop* must be 8.

- *string\_table\_return*

  Specifies the **XmStringTable** array into which the converted compound strings are placed.

- *count\_return*

  Specifies the number of **XmString**s returned by this function.

## RETURN VALUES

Upon success, this function returns the set of **XmString**s in *string\_table\_return*, and it returns the number of **XmString**s in *count\_return*, and returns Success. Otherwise, it returns the following:

- **XLocaleNotSupported**

  Returned if conversion depends on the locale and the current locale is not supported.

- **XConverterNotFound**

  Returned if conversion to the encoding of the current locale is required and if the locale is supported but no converter is available for the encoding specified in *text\_prop*.

## RELATED INFORMATION

[**XmCvtXmStringTableToTextProperty**(3)](/XmCvtXmStringTableToTextProperty/3.md), [**XmText**(3)](/XmText/3.md), and [**XmTextGetString**(3)](/XmTextGetString/3.md).
