##### pygame-ce documentation

Pygame-ce Home || Help Contents || Reference Index

Most useful stuff: Color | display | draw | event | font | image | key | locals | mixer | mouse | Rect | Surface | time | music | pygame

Advanced stuff: cursors | joystick | mask | sprite | transform | BufferProxy | freetype | gfxdraw | midi | PixelArray | pixelcopy | sndarray | surfarray | math

Other: camera | controller | examples | scrap | system | tests | touch | typing | version | Window

## src_c/color.c

This extension module defines the Python type `pygame.Color` Pygame object for color representations..

Header file: src_c/include/pygame.h

PyTypeObject *pgColor_Type

  The Pygame color object type `pygame.Color`.

int pgColor_CheckExact(PyObject *obj)

  Return true if obj is an instance of type pgColor_Type, but not a pgColor_Type subclass instance. This macro does not check if obj is not `NULL` or indeed a Python type.

PyObject *pgColor_New(Uint8 rgba[])

  Return a new `pygame.Color` instance from the four element array rgba. On failure, raise a Python exception and return `NULL`.

PyObject *pgColor_NewLength(Uint8 rgba[], Uint8 length)

  Return a `new pygame.Color` instance having length elements, with element values taken from the first length elements of array rgba. Argument length must be between `1` and `4` inclusive. On failure, raise a Python exception and return `NULL`.

int pg_RGBAFromObjEx(PyObject *color, Uint8 rgba[], pgColorHandleFlags handle_flags)

  Set the four element array rgba to the color represented by object color. Return `1` on success, `0` otherwise and sets a python exception. This in an extension of `pg_RGBAFromObj()` optimized for pgColor_Type instances and tuples. It can also handle integer and string color inputs based on `handle_flags`.

int pg_MappedColorFromObj(PyObject *val, SDL_Surface *surf, Uint32 *color, pgColorHandleFlags handle_flags)

  Like above function, but returns mapped color instead. One notable point of difference is the way in which ints are handled (this function directly interprets the int passed as the mapped color on the surface `surf``)

Edit on GitHub