Color

The Color structure contains functions to manipulate colours and palettes.

structure Color:

  sig

    type HPALETTE and HDC



    datatype

      PaletteEntryFlag = PC_EXPLICIT | PC_NOCOLLAPSE | PC_NULL | PC_RESERVED

    type PALETTEENTRY = {red: int, green: int, blue: int, flags: PaletteEntryFlag}



    type COLORREF

    val toRGB :

       COLORREF -> {red: Int.int, blue: Int.int, green: Int.int}

    val RGB : {red: int, blue: int, green: int} -> COLORREF

    val PALETTERGB : {red: int, blue: int, green: int} -> COLORREF



    type SystemPaletteUse

    val SYSPAL_ERROR : SystemPaletteUse

    val SYSPAL_NOSTATIC : SystemPaletteUse

    val SYSPAL_STATIC : SystemPaletteUse



    val AnimatePalette : HPALETTE * int * PALETTEENTRY list -> bool

    val CreateHalftonePalette : HDC -> HPALETTE

    val CreatePalette : PALETTEENTRY list -> HPALETTE

    val GetNearestColor : HDC * COLORREF -> COLORREF

    val GetNearestPaletteIndex : HPALETTE * COLORREF -> int

    val GetPaletteEntries : HPALETTE * int * int -> PALETTEENTRY list

    val GetSystemPaletteEntries : HPALETTE * int * int -> PALETTEENTRY list

    val GetSystemPaletteUse : HDC -> SystemPaletteUse

    val RealizePalette : HDC -> int

    val ResizePalette : HPALETTE * int -> unit

    val SelectPalette : HDC * HPALETTE * bool -> HPALETTE

    val SetPaletteEntries : HPALETTE * int * PALETTEENTRY list -> unit

    val SetSystemPaletteUse : HDC * SystemPaletteUse -> SystemPaletteUse

    val UnrealizeObject : HPALETTE -> unit

    val UpdateColors : HDC -> unit

  end