1 /// License: MIT
2 module ultralight.enums;
3 
4 import ultralight.bindings;
5 
6 /// See_Also: https://ultralig.ht/api/c/1_3_0/_c_a_p_i___defines_8h.html#af81b997faeeb522a0cb41000e0c3f89d
7 enum BitmapFormat {
8   ///
9   a8_unorm = kBitmapFormat_A8_UNORM,
10   ///
11   bgra8_unorm_srgb = kBitmapFormat_BGRA8_UNORM_SRGB
12 }
13 
14 ///
15 enum FaceWinding {
16   ///
17   clockwise = kFaceWinding_Clockwise,
18   ///
19   counterClockwise = kFaceWinding_CounterClockwise
20 }
21 
22 ///
23 enum FontHinting {
24   /// Lighter hinting algorithm– glyphs are slightly fuzzier but better resemble their original shape.
25   ///
26   /// This is achieved by snapping glyphs to the pixel grid only vertically which better preserves inter-glyph spacing.
27   smooth = kFontHinting_Smooth,
28   /// Default hinting algorithm– offers a good balance between sharpness and shape at smaller font sizes.
29   normal = kFontHinting_Normal,
30   /// Strongest hinting algorithm– outputs only black/white glyphs.
31   ///
32   /// The result is usually unpleasant if the underlying TTF does not contain hints for this type of rendering.
33   monochrome = kFontHinting_Monochrome
34 }
35 
36 ///
37 enum Cursor {
38   ///
39   pointer = kCursor_Pointer,
40   ///
41   cross = kCursor_Cross,
42   ///
43   hand = kCursor_Hand,
44   ///
45   iBeam = kCursor_IBeam,
46   ///
47   wait = kCursor_Wait,
48   ///
49   help = kCursor_Help,
50   ///
51   eastResize = kCursor_EastResize,
52   ///
53   northResize = kCursor_NorthResize,
54   ///
55   northEastResize = kCursor_NorthEastResize,
56   ///
57   northWestResize = kCursor_NorthWestResize,
58   ///
59   southResize = kCursor_SouthResize,
60   ///
61   southEastResize = kCursor_SouthEastResize,
62   ///
63   southWestResize = kCursor_SouthWestResize,
64   ///
65   westResize = kCursor_WestResize,
66   ///
67   northSouthResize = kCursor_NorthSouthResize,
68   ///
69   eastWestResize = kCursor_EastWestResize,
70   ///
71   northEastSouthWestResize = kCursor_NorthEastSouthWestResize,
72   ///
73   northWestSouthEastResize = kCursor_NorthWestSouthEastResize,
74   ///
75   columnResize = kCursor_ColumnResize,
76   ///
77   rowResize = kCursor_RowResize,
78   ///
79   middlePanning = kCursor_MiddlePanning,
80   ///
81   eastPanning = kCursor_EastPanning,
82   ///
83   northPanning = kCursor_NorthPanning,
84   ///
85   northEastPanning = kCursor_NorthEastPanning,
86   ///
87   northWestPanning = kCursor_NorthWestPanning,
88   ///
89   southPanning = kCursor_SouthPanning,
90   ///
91   southEastPanning = kCursor_SouthEastPanning,
92   ///
93   southWestPanning = kCursor_SouthWestPanning,
94   ///
95   westPanning = kCursor_WestPanning,
96   ///
97   move = kCursor_Move,
98   ///
99   verticalText = kCursor_VerticalText,
100   ///
101   cell = kCursor_Cell,
102   ///
103   contextMenu = kCursor_ContextMenu,
104   ///
105   alias_ = kCursor_Alias,
106   ///
107   progress = kCursor_Progress,
108   ///
109   noDrop = kCursor_NoDrop,
110   ///
111   copy = kCursor_Copy,
112   ///
113   none = kCursor_None,
114   ///
115   notAllowed = kCursor_NotAllowed,
116   ///
117   zoomIn = kCursor_ZoomIn,
118   ///
119   zoomOut = kCursor_ZoomOut,
120   ///
121   grab = kCursor_Grab,
122   ///
123   grabbing = kCursor_Grabbing,
124   ///
125   custom = kCursor_Custom
126 }