The Region structure contains functions to operate on regions.
structure Region: sig type HDC and HBRUSH and HRGN and HPEN type POINT = { x: int, y: int } type RECT = { top: int, left: int, bottom: int, right: int } type RegionOperation val RGN_AND : RegionOperation val RGN_COPY : RegionOperation val RGN_DIFF : RegionOperation val RGN_ERROR : RegionOperation val RGN_OR : RegionOperation val RGN_XOR : RegionOperation type ResultRegion val COMPLEXREGION : ResultRegion val NULLREGION : ResultRegion val ERROR : ResultRegion val SIMPLEREGION : ResultRegion type PolyFillMode val ALTERNATE : PolyFillMode val WINDING : PolyFillMode val CombineRgn : HRGN * HRGN * HRGN * RegionOperation -> ResultRegion val CreateEllipticRgn : RECT -> HRGN val CreatePolygonRgn : POINT list * PolyFillMode -> HPEN val CreateRectRgn : RECT -> HRGN val CreateRoundRectRgn : RECT * int * int -> HRGN val EqualRgn : HRGN * HRGN -> bool val FillRgn : HDC * HRGN * HBRUSH -> unit val FrameRgn : HDC * HRGN * HBRUSH * int * int -> unit val GetPolyFillMode : HDC -> PolyFillMode val GetRgnBox : HRGN -> RECT val InvertRgn : HDC * HRGN -> unit val OffsetRgn : HRGN * int * int -> ResultRegion val PaintRgn : HDC * HRGN -> unit val PtInRegion : HRGN * int * int -> bool val RectInRegion : HRGN * RECT -> bool val SetPolyFillMode : HDC * PolyFillMode -> PolyFillMode val SetRectRgn : HRGN * RECT -> bool end