splice


Description:

public void splice (AttrList other, int pos, int len)

This function opens up a hole in this, fills it in with attributes from the left, and then merges other on top of the hole.

This operation is equivalent to stretching every attribute that applies at position pos in this by an amount len, and then calling [[email protected]] with a copy of each attribute in other in sequence (offset in position by pos, and limited in length to len).

This operation proves useful for, for instance, inserting a pre-edit string in the middle of an edit buffer.

For backwards compatibility, the function behaves differently when len is 0. In this case, the attributes from other are not imited to len, and are just overlayed on top of this.

This mode is useful for merging two lists of attributes together.

Parameters:

this

a `PangoAttrList`

other

another `PangoAttrList`

pos

the position in this at which to insert other

len

the length of the spliced segment. (Note that this must be specified since the attributes in other may only be present at some subsection of this range)




2022 vala-language.org