Name
playoutline:XToIndex -- convert from x offset to index
Synopsis
inside, index, trailing = playoutline:XToIndex(x_pos)
Function
Converts from x offset to the byte index of the corresponding character within the text of the layout.

If x_pos is outside the line, index and trailing will point to the very first or very last position in the line. This determination is based on the resolved direction of the paragraph; for example, if the resolved direction is right-to-left, then an X position to the right of the line (after it) results in 0 being stored in index and trailing. An X position to the left of the line results in index pointing to the (logical) last grapheme in the line and trailing being set to the number of characters in that grapheme. The reverse is true for a left-to-right line.

This function returns False if x_pos was outside the line, True if inside

Inputs
x_pos
the X offset (in Pango units) from the left edge of the line
Results
inside
False if x_pos was outside the line, True if inside
index
calculated byte index for the grapheme in which the user clicked
trailing
integer indicating where in the grapheme the user clicked; it will either be zero, or the number of characters in the grapheme; 0 represents the leading edge of the grapheme

Show TOC