ttfxGetTextSubStringForLine function ttf

TtfxSubString? ttfxGetTextSubStringForLine(
  1. Pointer<TtfText> text,
  2. int line
)

Get the substring of a text object that contains the given line.

If line is less than 0, this will return a zero length substring at the beginning of the text with the TTF_SUBSTRING_TEXT_START flag set. If line is greater than or equal to text->num_lines this will return a zero length substring at the end of the text with the TTF_SUBSTRING_TEXT_END flag set.

\param text the TTF_Text to query. \param line a zero-based line index, in the range 0 .. text->num_lines-1. \param substring a pointer filled in with the substring containing the offset. \returns true on success or false on failure; call SDL_GetError() for more information.

\threadsafety This function should be called on the thread that created the text.

\since This function is available since SDL_ttf 3.0.0.

extern SDL_DECLSPEC bool SDLCALL TTF_GetTextSubStringForLine(TTF_Text *text, int line, TTF_SubString *substring)

Implementation

TtfxSubString? ttfxGetTextSubStringForLine(Pointer<TtfText> text, int line) {
  TtfxSubString? result;
  final subStringPointer = ffi.calloc<TtfSubString>();
  final bl = ttfGetTextSubStringForLine(text, line, subStringPointer);
  if (bl) {
    result = TtfxSubString()..loadFromPointer(subStringPointer);
  }
  subStringPointer.callocFree();
  return result;
}