The Brush structure contains functions and structures to create and operate on brushes. Brushes are used to fill areas of the screen with single colours or patterns.
structure Brush:
sig
type HBITMAP and HBRUSH and HDC
datatype
HatchStyle =
HS_BDIAGONAL
| HS_CROSS
| HS_DIAGCROSS
| HS_FDIAGONAL
| HS_HORIZONTAL
| HS_VERTICAL
datatype
BrushStyle =
BS_HATCHED of HatchStyle
| BS_HOLLOW
| BS_PATTERN of HBITMAP
| BS_SOLID
type COLORREF = Color.COLORREF
type LOGBRUSH = BrushStyle * COLORREF
type POINT = {x: int, y: int}
type RasterOpCode = Bitmap.RasterOpCode
datatype ColorType =
COLOR_SCROLLBAR
| COLOR_BACKGROUND
| COLOR_ACTIVECAPTION
| COLOR_INACTIVECAPTION
| COLOR_MENU
| COLOR_WINDOW
| COLOR_WINDOWFRAME
| COLOR_MENUTEXT
| COLOR_WINDOWTEXT
| COLOR_CAPTIONTEXT
| COLOR_ACTIVEBORDER
| COLOR_INACTIVEBORDER
| COLOR_APPWORKSPACE
| COLOR_HIGHLIGHT
| COLOR_HIGHLIGHTTEXT
| COLOR_BTNFACE
| COLOR_BTNSHADOW
| COLOR_GRAYTEXT
| COLOR_BTNTEXT
| COLOR_INACTIVECAPTIONTEXT
| COLOR_BTNHIGHLIGHT
| COLOR_3DDKSHADOW
| COLOR_3DLIGHT
| COLOR_INFOTEXT
| COLOR_INFOBK
val CreateBrushIndirect : LOGBRUSH -> HBRUSH
val CreateHatchBrush : HatchStyle * COLORREF -> HBRUSH
val CreatePatternBrush : HBITMAP -> HBRUSH
val CreateSolidBrush : COLORREF -> HBRUSH
val GetSysColorBrush : ColorType -> HBRUSH
val GetBrushOrgEx : HDC -> POINT
val PatBlt : HDC * int * int * int * int * RasterOpCode -> unit
val SetBrushOrgEx : HDC * POINT -> POINT
end