Basics

Guides

API Reference

Menu

Basics

Guides

API Reference

class: PangoItem

[14:7] extends: object

The PangoItem structure stores information about a segment of text. You typically obtain PangoItems by itemizing a piece of text with [func@itemize].

Members

  • handleObj
  • lib
  • retainedCallbacks
  • signalHandlerNames
  • signalSetterHandlers

Methods

  • PangoItem (Handle = null)

    Creates a new PangoItem structure initialized to default values.

    • @p Handle is an optional native handle or wrapper whose handle to adopt; when the native constructor is called.
  • toNativeHandle (Source)

    Normalizes a constructor argument into a raw pointer carrier. Accepts a raw NativeHandle, a raw NativeBuffer returned from fn.call(...), another generated wrapper exposing handle(), or null. Returns null when the argument carries no pointer.

    • @p Source is the raw handle, raw buffer, wrapper, or null.
    • @r A raw pointer carrier or null when no pointer is present.
  • getLib ()

    Returns the opened native library for this generated wrapper.

    • @r The opened native library.
  • handle ()

    Returns the wrapped NativeHandle.

    • @r The wrapped NativeHandle.
  • isNull ()

    Returns true when the wrapped handle is null.

    • @r A bool.
  • describe ()

    Returns a small string for debugging generated wrappers.

    • @r A string.
  • apply_attrs (object iter)

    Add attributes to a PangoItem. The idea is that you have attributes that don't affect itemization, such as font features, so you filter them out using [method@Pango.AttrList.filter], itemize your text, then reapply the attributes to the resulting items using this function. The @iter should be positioned before the range of the item, and will be advanced past it. This function is meant to be called in a loop over the items resulting from itemization, while passing the iter to each call.

    • @p iter is a PangoAttrIterator.
    • @r None.
  • copy ()

    Copy an existing PangoItem structure.

    • @r the newly allocated PangoItem.
  • free ()

    Free a PangoItem and all associated memory.

    • @r None.
  • get_char_offset ()

    Returns the character offset of the item from the beginning of the itemized text. If the item has not been obtained from Pango's itemization machinery, then the character offset is not available. In that case, this function returns -1.

    • @r the character offset of the item from the beginning of the itemized text, or -1.
  • split (int split_index, int split_offset)

    Modifies @orig to cover only the text after @split_index, and returns a new item that covers the text before @split_index that used to be in

    • @orig. You can think of @split_index as the length of the returned item.
    • @split_index may not be 0, and it may not be greater than or equal to the length of @orig (that is, there must be at least one byte assigned to each item, you can't create a zero-length item). @split_offset is the length of the first item in chars, and must be provided because the text used to generate the item isn't available, so pango_item_split() can't count the char length of the split items itself.
    • @p split_index is byte index of position to split item, relative to the start of the item.
    • @p split_offset is number of chars between start of @orig and
    • @split_index. ``
    • @r new item representing text before @split_index, which should be freed with [method@Pango.Item.free]..