sdlxGetRenderDrawColorFloat function render

bool sdlxGetRenderDrawColorFloat(
  1. Pointer<SdlRenderer> renderer,
  2. SdlxFColor color
)

Get the color used for drawing operations (Rect, Line and Clear).

\param renderer the rendering context. \param r a pointer filled in with the red value used to draw on the rendering target. \param g a pointer filled in with the green value used to draw on the rendering target. \param b a pointer filled in with the blue value used to draw on the rendering target. \param a a pointer filled in with the alpha value used to draw on the rendering target. \returns true on success or false on failure; call SDL_GetError() for more information.

\threadsafety This function should only be called on the main thread.

\since This function is available since SDL 3.2.0.

\sa SDL_SetRenderDrawColorFloat \sa SDL_GetRenderDrawColor

extern SDL_DECLSPEC bool SDLCALL SDL_GetRenderDrawColorFloat(SDL_Renderer *renderer, float *r, float *g, float *b, float *a)

Implementation

bool sdlxGetRenderDrawColorFloat(
  Pointer<SdlRenderer> renderer,
  SdlxFColor color,
) {
  final rPointer = calloc<Float>();
  final gPointer = calloc<Float>();
  final bPointer = calloc<Float>();
  final aPointer = calloc<Float>();
  final result = sdlGetRenderDrawColorFloat(
    renderer,
    rPointer,
    gPointer,
    bPointer,
    aPointer,
  );
  if (result) {
    color
      ..r = rPointer.value
      ..g = gPointer.value
      ..b = bPointer.value
      ..a = aPointer.value;
  }
  rPointer.callocFree();
  gPointer.callocFree();
  bPointer.callocFree();
  aPointer.callocFree();
  return result;
}