ttfSetTextString function

bool ttfSetTextString(
  1. Pointer<TtfText> text,
  2. String? string,
  3. int length
)

Set the UTF-8 text used by a text object.

\param text the TTF_Text to modify. \param string the UTF-8 text to use, may be NULL. \param length the length of the text, in bytes, or 0 for null terminated text. \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.

\sa TTF_AppendTextString \sa TTF_DeleteTextString \sa TTF_InsertTextString

extern SDL_DECLSPEC bool SDLCALL TTF_SetTextString(TTF_Text *text, const char *string, size_t length)

Implementation

bool ttfSetTextString(Pointer<TtfText> text, String? string, int length) {
  final ttfSetTextStringLookupFunction = libSdl3Ttf.lookupFunction<
      Uint8 Function(
          Pointer<TtfText> text, Pointer<Utf8> string, Uint32 length),
      int Function(Pointer<TtfText> text, Pointer<Utf8> string,
          int length)>('TTF_SetTextString');
  final stringPointer = string != null ? string.toNativeUtf8() : nullptr;
  final result =
      ttfSetTextStringLookupFunction(text, stringPointer, length) == 1;
  calloc.free(stringPointer);
  return result;
}