ttfInsertTextString function
Insert UTF-8 text into a text object.
\param text the TTF_Text to modify. \param offset the offset, in bytes, from the beginning of the string if >= 0, the offset from the end of the string if < 0. Note that this does not do UTF-8 validation, so you should only insert at UTF-8 sequence boundaries. \param string the UTF-8 text to insert. \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_SetTextString
extern SDL_DECLSPEC bool SDLCALL TTF_InsertTextString(TTF_Text *text, int offset, const char *string, size_t length)
Implementation
bool ttfInsertTextString(
Pointer<TtfText> text, int offset, String? string, int length) {
final ttfInsertTextStringLookupFunction = libSdl3Ttf.lookupFunction<
Uint8 Function(Pointer<TtfText> text, Int32 offset, Pointer<Utf8> string,
Uint32 length),
int Function(Pointer<TtfText> text, int offset, Pointer<Utf8> string,
int length)>('TTF_InsertTextString');
final stringPointer = string != null ? string.toNativeUtf8() : nullptr;
final result =
ttfInsertTextStringLookupFunction(text, offset, stringPointer, length) ==
1;
calloc.free(stringPointer);
return result;
}