XmTextFieldGetSubstring - Man Page

A TextField function that retrieves a copy of a portion of the internal text buffer

Synopsis

#include <Xm/TextF​.h>
int XmTextFieldGetSubstring(
Widget widget,
XmTextPosition start,
int num_chars,
int buffer_size,
char *buffer);

Description

XmTextFieldGetSubstring retrieves a copy of a portion of the internal text buffer of a TextField widget​. The function copies a specified number of characters from a given start position in the internal text buffer into a buffer provided by the application​. A NULL terminator is placed at the end of the copied data​.

The size of the required buffer depends on the maximum number of bytes per character (MB_CUR_MAX) for the current locale​. MB_CUR_MAX is a macro defined in stdlib​.h​. The buffer should be large enough to contain the substring to be copied and a NULL terminator​. Use the following equation to calculate the size of buffer the application should provide:

buffer_size = (num_chars* MB_CUR_MAX) + 1
(void)
widget

Specifies the TextField widget ID​.

start

Specifies the beginning character position from which the data will be retrieved​. This is an integer number of characters from the beginning of the text buffer​. The first character position is 0 (zero)​.

num_chars

Specifies the number of characters to be copied into the provided buffer​.

buffer_size

Specifies the size of the supplied buffer in bytes​. This size should account for a NULL terminator​.

buffer

Specifies the character buffer into which the internal text buffer will be copied​.

For a complete definition of TextField and its associated resources, see XmTextField(3)​.

Return

XmCOPY_SUCCEEDED

The function was successful​.

XmCOPY_FAILED

The function failed because it was unable to copy the specified number of characters into the buffer provided​. The buffer size may be insufficient​. The contents of buffer are undefined​.

XmCOPY_TRUNCATED

The requested number of characters extended beyond the internal buffer​. The function copied characters between start and the end of the widget​'s buffer and terminated the string with a NULL terminator; fewer than num_chars characters were copied​.

Referenced By

XmTextField(3), XmTextFieldGetSubstringWcs(3).