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