Function

Pangoitemize

Declaration [src]

GList*
pango_itemize (
  PangoContext* context,
  const char* text,
  int start_index,
  int length,
  PangoAttrList* attrs,
  PangoAttrIterator* cached_iter
)

Description [src]

Breaks a piece of text into segments with consistent directional level and font.

Each byte of text will be contained in exactly one of the items in the returned list; the generated list of items will be in logical order (the start offsets of the items are ascending).

cached_iter should be an iterator over attrs currently positioned at a range before or containing start_index; cached_iter will be advanced to the range covering the position just after start_index + length. (i.e. if itemizing in a loop, just keep passing in the same cached_iter).

Parameters

context

Type: PangoContext

A structure holding information that affects the itemization process.

The data is owned by the caller of the function.
text

Type: const char*

The text to itemize. Must be valid UTF-8

The data is owned by the caller of the function.
The value is a NUL terminated UTF-8 string.
start_index

Type: int

First byte in text to process.

length

Type: int

The number of bytes (not characters) to process after start_index. This must be >= 0.

attrs

Type: PangoAttrList

The set of attributes that apply to text.

The data is owned by the caller of the function.
cached_iter

Type: PangoAttrIterator

Cached attribute iterator.

The argument can be NULL.
The data is owned by the caller of the function.

Return value

Type: A list of PangoItem*

A GList of PangoItem structures. The items should be freed using pango_item_free() in combination with g_list_free_full().

The caller of the function takes ownership of the data, and is responsible for freeing it.