objc2_app_kit/generated/
NSBezierPath.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6#[cfg(feature = "objc2-core-foundation")]
7use objc2_core_foundation::*;
8#[cfg(feature = "objc2-core-graphics")]
9#[cfg(target_vendor = "apple")]
10use objc2_core_graphics::*;
11use objc2_foundation::*;
12
13use crate::*;
14
15/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nslinecapstyle?language=objc)
16// NS_ENUM
17#[repr(transparent)]
18#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
19pub struct NSLineCapStyle(pub NSUInteger);
20impl NSLineCapStyle {
21    #[doc(alias = "NSLineCapStyleButt")]
22    pub const Butt: Self = Self(0);
23    #[doc(alias = "NSLineCapStyleRound")]
24    pub const Round: Self = Self(1);
25    #[doc(alias = "NSLineCapStyleSquare")]
26    pub const Square: Self = Self(2);
27}
28
29unsafe impl Encode for NSLineCapStyle {
30    const ENCODING: Encoding = NSUInteger::ENCODING;
31}
32
33unsafe impl RefEncode for NSLineCapStyle {
34    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
35}
36
37/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nslinejoinstyle?language=objc)
38// NS_ENUM
39#[repr(transparent)]
40#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
41pub struct NSLineJoinStyle(pub NSUInteger);
42impl NSLineJoinStyle {
43    #[doc(alias = "NSLineJoinStyleMiter")]
44    pub const Miter: Self = Self(0);
45    #[doc(alias = "NSLineJoinStyleRound")]
46    pub const Round: Self = Self(1);
47    #[doc(alias = "NSLineJoinStyleBevel")]
48    pub const Bevel: Self = Self(2);
49}
50
51unsafe impl Encode for NSLineJoinStyle {
52    const ENCODING: Encoding = NSUInteger::ENCODING;
53}
54
55unsafe impl RefEncode for NSLineJoinStyle {
56    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
57}
58
59/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nswindingrule?language=objc)
60// NS_ENUM
61#[repr(transparent)]
62#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
63pub struct NSWindingRule(pub NSUInteger);
64impl NSWindingRule {
65    #[doc(alias = "NSWindingRuleNonZero")]
66    pub const NonZero: Self = Self(0);
67    #[doc(alias = "NSWindingRuleEvenOdd")]
68    pub const EvenOdd: Self = Self(1);
69}
70
71unsafe impl Encode for NSWindingRule {
72    const ENCODING: Encoding = NSUInteger::ENCODING;
73}
74
75unsafe impl RefEncode for NSWindingRule {
76    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
77}
78
79/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsbezierpathelement?language=objc)
80// NS_ENUM
81#[repr(transparent)]
82#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
83pub struct NSBezierPathElement(pub NSUInteger);
84impl NSBezierPathElement {
85    #[doc(alias = "NSBezierPathElementMoveTo")]
86    pub const MoveTo: Self = Self(0);
87    #[doc(alias = "NSBezierPathElementLineTo")]
88    pub const LineTo: Self = Self(1);
89    #[doc(alias = "NSBezierPathElementCubicCurveTo")]
90    pub const CubicCurveTo: Self = Self(2);
91    #[doc(alias = "NSBezierPathElementClosePath")]
92    pub const ClosePath: Self = Self(3);
93    #[doc(alias = "NSBezierPathElementQuadraticCurveTo")]
94    pub const QuadraticCurveTo: Self = Self(4);
95    #[deprecated]
96    #[doc(alias = "NSBezierPathElementCurveTo")]
97    pub const CurveTo: Self = Self(NSBezierPathElement::CubicCurveTo.0);
98}
99
100unsafe impl Encode for NSBezierPathElement {
101    const ENCODING: Encoding = NSUInteger::ENCODING;
102}
103
104unsafe impl RefEncode for NSBezierPathElement {
105    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
106}
107
108extern_class!(
109    /// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsbezierpath?language=objc)
110    #[unsafe(super(NSObject))]
111    #[derive(Debug, PartialEq, Eq, Hash)]
112    pub struct NSBezierPath;
113);
114
115unsafe impl NSCoding for NSBezierPath {}
116
117unsafe impl NSCopying for NSBezierPath {}
118
119unsafe impl CopyingHelper for NSBezierPath {
120    type Result = Self;
121}
122
123unsafe impl NSObjectProtocol for NSBezierPath {}
124
125unsafe impl NSSecureCoding for NSBezierPath {}
126
127impl NSBezierPath {
128    extern_methods!(
129        #[unsafe(method(bezierPath))]
130        #[unsafe(method_family = none)]
131        pub unsafe fn bezierPath() -> Retained<NSBezierPath>;
132
133        #[unsafe(method(bezierPathWithRect:))]
134        #[unsafe(method_family = none)]
135        pub unsafe fn bezierPathWithRect(rect: NSRect) -> Retained<NSBezierPath>;
136
137        #[unsafe(method(bezierPathWithOvalInRect:))]
138        #[unsafe(method_family = none)]
139        pub unsafe fn bezierPathWithOvalInRect(rect: NSRect) -> Retained<NSBezierPath>;
140
141        #[cfg(feature = "objc2-core-foundation")]
142        #[unsafe(method(bezierPathWithRoundedRect:xRadius:yRadius:))]
143        #[unsafe(method_family = none)]
144        pub unsafe fn bezierPathWithRoundedRect_xRadius_yRadius(
145            rect: NSRect,
146            x_radius: CGFloat,
147            y_radius: CGFloat,
148        ) -> Retained<NSBezierPath>;
149
150        #[cfg(feature = "objc2-core-graphics")]
151        #[cfg(target_vendor = "apple")]
152        #[unsafe(method(bezierPathWithCGPath:))]
153        #[unsafe(method_family = none)]
154        pub unsafe fn bezierPathWithCGPath(cg_path: &CGPath) -> Retained<NSBezierPath>;
155
156        #[cfg(feature = "objc2-core-graphics")]
157        #[cfg(target_vendor = "apple")]
158        #[unsafe(method(CGPath))]
159        #[unsafe(method_family = none)]
160        pub unsafe fn CGPath(&self) -> Retained<CGPath>;
161
162        #[cfg(feature = "objc2-core-graphics")]
163        #[cfg(target_vendor = "apple")]
164        /// Setter for [`CGPath`][Self::CGPath].
165        #[unsafe(method(setCGPath:))]
166        #[unsafe(method_family = none)]
167        pub unsafe fn setCGPath(&self, cg_path: &CGPath);
168
169        #[unsafe(method(fillRect:))]
170        #[unsafe(method_family = none)]
171        pub unsafe fn fillRect(rect: NSRect);
172
173        #[unsafe(method(strokeRect:))]
174        #[unsafe(method_family = none)]
175        pub unsafe fn strokeRect(rect: NSRect);
176
177        #[unsafe(method(clipRect:))]
178        #[unsafe(method_family = none)]
179        pub unsafe fn clipRect(rect: NSRect);
180
181        #[unsafe(method(strokeLineFromPoint:toPoint:))]
182        #[unsafe(method_family = none)]
183        pub unsafe fn strokeLineFromPoint_toPoint(point1: NSPoint, point2: NSPoint);
184
185        #[unsafe(method(drawPackedGlyphs:atPoint:))]
186        #[unsafe(method_family = none)]
187        pub unsafe fn drawPackedGlyphs_atPoint(packed_glyphs: NonNull<c_char>, point: NSPoint);
188
189        #[cfg(feature = "objc2-core-foundation")]
190        #[unsafe(method(defaultMiterLimit))]
191        #[unsafe(method_family = none)]
192        pub unsafe fn defaultMiterLimit() -> CGFloat;
193
194        #[cfg(feature = "objc2-core-foundation")]
195        /// Setter for [`defaultMiterLimit`][Self::defaultMiterLimit].
196        #[unsafe(method(setDefaultMiterLimit:))]
197        #[unsafe(method_family = none)]
198        pub unsafe fn setDefaultMiterLimit(default_miter_limit: CGFloat);
199
200        #[cfg(feature = "objc2-core-foundation")]
201        #[unsafe(method(defaultFlatness))]
202        #[unsafe(method_family = none)]
203        pub unsafe fn defaultFlatness() -> CGFloat;
204
205        #[cfg(feature = "objc2-core-foundation")]
206        /// Setter for [`defaultFlatness`][Self::defaultFlatness].
207        #[unsafe(method(setDefaultFlatness:))]
208        #[unsafe(method_family = none)]
209        pub unsafe fn setDefaultFlatness(default_flatness: CGFloat);
210
211        #[unsafe(method(defaultWindingRule))]
212        #[unsafe(method_family = none)]
213        pub unsafe fn defaultWindingRule() -> NSWindingRule;
214
215        /// Setter for [`defaultWindingRule`][Self::defaultWindingRule].
216        #[unsafe(method(setDefaultWindingRule:))]
217        #[unsafe(method_family = none)]
218        pub unsafe fn setDefaultWindingRule(default_winding_rule: NSWindingRule);
219
220        #[unsafe(method(defaultLineCapStyle))]
221        #[unsafe(method_family = none)]
222        pub unsafe fn defaultLineCapStyle() -> NSLineCapStyle;
223
224        /// Setter for [`defaultLineCapStyle`][Self::defaultLineCapStyle].
225        #[unsafe(method(setDefaultLineCapStyle:))]
226        #[unsafe(method_family = none)]
227        pub unsafe fn setDefaultLineCapStyle(default_line_cap_style: NSLineCapStyle);
228
229        #[unsafe(method(defaultLineJoinStyle))]
230        #[unsafe(method_family = none)]
231        pub unsafe fn defaultLineJoinStyle() -> NSLineJoinStyle;
232
233        /// Setter for [`defaultLineJoinStyle`][Self::defaultLineJoinStyle].
234        #[unsafe(method(setDefaultLineJoinStyle:))]
235        #[unsafe(method_family = none)]
236        pub unsafe fn setDefaultLineJoinStyle(default_line_join_style: NSLineJoinStyle);
237
238        #[cfg(feature = "objc2-core-foundation")]
239        #[unsafe(method(defaultLineWidth))]
240        #[unsafe(method_family = none)]
241        pub unsafe fn defaultLineWidth() -> CGFloat;
242
243        #[cfg(feature = "objc2-core-foundation")]
244        /// Setter for [`defaultLineWidth`][Self::defaultLineWidth].
245        #[unsafe(method(setDefaultLineWidth:))]
246        #[unsafe(method_family = none)]
247        pub unsafe fn setDefaultLineWidth(default_line_width: CGFloat);
248
249        #[unsafe(method(moveToPoint:))]
250        #[unsafe(method_family = none)]
251        pub unsafe fn moveToPoint(&self, point: NSPoint);
252
253        #[unsafe(method(lineToPoint:))]
254        #[unsafe(method_family = none)]
255        pub unsafe fn lineToPoint(&self, point: NSPoint);
256
257        #[unsafe(method(curveToPoint:controlPoint1:controlPoint2:))]
258        #[unsafe(method_family = none)]
259        pub unsafe fn curveToPoint_controlPoint1_controlPoint2(
260            &self,
261            end_point: NSPoint,
262            control_point1: NSPoint,
263            control_point2: NSPoint,
264        );
265
266        #[unsafe(method(curveToPoint:controlPoint:))]
267        #[unsafe(method_family = none)]
268        pub unsafe fn curveToPoint_controlPoint(&self, end_point: NSPoint, control_point: NSPoint);
269
270        #[unsafe(method(closePath))]
271        #[unsafe(method_family = none)]
272        pub unsafe fn closePath(&self);
273
274        #[unsafe(method(removeAllPoints))]
275        #[unsafe(method_family = none)]
276        pub unsafe fn removeAllPoints(&self);
277
278        #[unsafe(method(relativeMoveToPoint:))]
279        #[unsafe(method_family = none)]
280        pub unsafe fn relativeMoveToPoint(&self, point: NSPoint);
281
282        #[unsafe(method(relativeLineToPoint:))]
283        #[unsafe(method_family = none)]
284        pub unsafe fn relativeLineToPoint(&self, point: NSPoint);
285
286        #[unsafe(method(relativeCurveToPoint:controlPoint1:controlPoint2:))]
287        #[unsafe(method_family = none)]
288        pub unsafe fn relativeCurveToPoint_controlPoint1_controlPoint2(
289            &self,
290            end_point: NSPoint,
291            control_point1: NSPoint,
292            control_point2: NSPoint,
293        );
294
295        #[unsafe(method(relativeCurveToPoint:controlPoint:))]
296        #[unsafe(method_family = none)]
297        pub unsafe fn relativeCurveToPoint_controlPoint(
298            &self,
299            end_point: NSPoint,
300            control_point: NSPoint,
301        );
302
303        #[cfg(feature = "objc2-core-foundation")]
304        #[unsafe(method(lineWidth))]
305        #[unsafe(method_family = none)]
306        pub unsafe fn lineWidth(&self) -> CGFloat;
307
308        #[cfg(feature = "objc2-core-foundation")]
309        /// Setter for [`lineWidth`][Self::lineWidth].
310        #[unsafe(method(setLineWidth:))]
311        #[unsafe(method_family = none)]
312        pub unsafe fn setLineWidth(&self, line_width: CGFloat);
313
314        #[unsafe(method(lineCapStyle))]
315        #[unsafe(method_family = none)]
316        pub unsafe fn lineCapStyle(&self) -> NSLineCapStyle;
317
318        /// Setter for [`lineCapStyle`][Self::lineCapStyle].
319        #[unsafe(method(setLineCapStyle:))]
320        #[unsafe(method_family = none)]
321        pub unsafe fn setLineCapStyle(&self, line_cap_style: NSLineCapStyle);
322
323        #[unsafe(method(lineJoinStyle))]
324        #[unsafe(method_family = none)]
325        pub unsafe fn lineJoinStyle(&self) -> NSLineJoinStyle;
326
327        /// Setter for [`lineJoinStyle`][Self::lineJoinStyle].
328        #[unsafe(method(setLineJoinStyle:))]
329        #[unsafe(method_family = none)]
330        pub unsafe fn setLineJoinStyle(&self, line_join_style: NSLineJoinStyle);
331
332        #[unsafe(method(windingRule))]
333        #[unsafe(method_family = none)]
334        pub unsafe fn windingRule(&self) -> NSWindingRule;
335
336        /// Setter for [`windingRule`][Self::windingRule].
337        #[unsafe(method(setWindingRule:))]
338        #[unsafe(method_family = none)]
339        pub unsafe fn setWindingRule(&self, winding_rule: NSWindingRule);
340
341        #[cfg(feature = "objc2-core-foundation")]
342        #[unsafe(method(miterLimit))]
343        #[unsafe(method_family = none)]
344        pub unsafe fn miterLimit(&self) -> CGFloat;
345
346        #[cfg(feature = "objc2-core-foundation")]
347        /// Setter for [`miterLimit`][Self::miterLimit].
348        #[unsafe(method(setMiterLimit:))]
349        #[unsafe(method_family = none)]
350        pub unsafe fn setMiterLimit(&self, miter_limit: CGFloat);
351
352        #[cfg(feature = "objc2-core-foundation")]
353        #[unsafe(method(flatness))]
354        #[unsafe(method_family = none)]
355        pub unsafe fn flatness(&self) -> CGFloat;
356
357        #[cfg(feature = "objc2-core-foundation")]
358        /// Setter for [`flatness`][Self::flatness].
359        #[unsafe(method(setFlatness:))]
360        #[unsafe(method_family = none)]
361        pub unsafe fn setFlatness(&self, flatness: CGFloat);
362
363        #[cfg(feature = "objc2-core-foundation")]
364        #[unsafe(method(getLineDash:count:phase:))]
365        #[unsafe(method_family = none)]
366        pub unsafe fn getLineDash_count_phase(
367            &self,
368            pattern: *mut CGFloat,
369            count: *mut NSInteger,
370            phase: *mut CGFloat,
371        );
372
373        #[cfg(feature = "objc2-core-foundation")]
374        #[unsafe(method(setLineDash:count:phase:))]
375        #[unsafe(method_family = none)]
376        pub unsafe fn setLineDash_count_phase(
377            &self,
378            pattern: *const CGFloat,
379            count: NSInteger,
380            phase: CGFloat,
381        );
382
383        #[unsafe(method(stroke))]
384        #[unsafe(method_family = none)]
385        pub unsafe fn stroke(&self);
386
387        #[unsafe(method(fill))]
388        #[unsafe(method_family = none)]
389        pub unsafe fn fill(&self);
390
391        #[unsafe(method(addClip))]
392        #[unsafe(method_family = none)]
393        pub unsafe fn addClip(&self);
394
395        #[unsafe(method(setClip))]
396        #[unsafe(method_family = none)]
397        pub unsafe fn setClip(&self);
398
399        #[unsafe(method(bezierPathByFlatteningPath))]
400        #[unsafe(method_family = none)]
401        pub unsafe fn bezierPathByFlatteningPath(&self) -> Retained<NSBezierPath>;
402
403        #[unsafe(method(bezierPathByReversingPath))]
404        #[unsafe(method_family = none)]
405        pub unsafe fn bezierPathByReversingPath(&self) -> Retained<NSBezierPath>;
406
407        #[unsafe(method(transformUsingAffineTransform:))]
408        #[unsafe(method_family = none)]
409        pub unsafe fn transformUsingAffineTransform(&self, transform: &NSAffineTransform);
410
411        #[unsafe(method(isEmpty))]
412        #[unsafe(method_family = none)]
413        pub unsafe fn isEmpty(&self) -> bool;
414
415        #[unsafe(method(currentPoint))]
416        #[unsafe(method_family = none)]
417        pub unsafe fn currentPoint(&self) -> NSPoint;
418
419        #[unsafe(method(controlPointBounds))]
420        #[unsafe(method_family = none)]
421        pub unsafe fn controlPointBounds(&self) -> NSRect;
422
423        #[unsafe(method(bounds))]
424        #[unsafe(method_family = none)]
425        pub unsafe fn bounds(&self) -> NSRect;
426
427        #[unsafe(method(elementCount))]
428        #[unsafe(method_family = none)]
429        pub unsafe fn elementCount(&self) -> NSInteger;
430
431        #[unsafe(method(elementAtIndex:associatedPoints:))]
432        #[unsafe(method_family = none)]
433        pub unsafe fn elementAtIndex_associatedPoints(
434            &self,
435            index: NSInteger,
436            points: NSPointArray,
437        ) -> NSBezierPathElement;
438
439        #[unsafe(method(elementAtIndex:))]
440        #[unsafe(method_family = none)]
441        pub unsafe fn elementAtIndex(&self, index: NSInteger) -> NSBezierPathElement;
442
443        #[unsafe(method(setAssociatedPoints:atIndex:))]
444        #[unsafe(method_family = none)]
445        pub unsafe fn setAssociatedPoints_atIndex(&self, points: NSPointArray, index: NSInteger);
446
447        #[unsafe(method(appendBezierPath:))]
448        #[unsafe(method_family = none)]
449        pub unsafe fn appendBezierPath(&self, path: &NSBezierPath);
450
451        #[unsafe(method(appendBezierPathWithRect:))]
452        #[unsafe(method_family = none)]
453        pub unsafe fn appendBezierPathWithRect(&self, rect: NSRect);
454
455        #[unsafe(method(appendBezierPathWithPoints:count:))]
456        #[unsafe(method_family = none)]
457        pub unsafe fn appendBezierPathWithPoints_count(
458            &self,
459            points: NSPointArray,
460            count: NSInteger,
461        );
462
463        #[unsafe(method(appendBezierPathWithOvalInRect:))]
464        #[unsafe(method_family = none)]
465        pub unsafe fn appendBezierPathWithOvalInRect(&self, rect: NSRect);
466
467        #[cfg(feature = "objc2-core-foundation")]
468        #[unsafe(method(appendBezierPathWithArcWithCenter:radius:startAngle:endAngle:clockwise:))]
469        #[unsafe(method_family = none)]
470        pub unsafe fn appendBezierPathWithArcWithCenter_radius_startAngle_endAngle_clockwise(
471            &self,
472            center: NSPoint,
473            radius: CGFloat,
474            start_angle: CGFloat,
475            end_angle: CGFloat,
476            clockwise: bool,
477        );
478
479        #[cfg(feature = "objc2-core-foundation")]
480        #[unsafe(method(appendBezierPathWithArcWithCenter:radius:startAngle:endAngle:))]
481        #[unsafe(method_family = none)]
482        pub unsafe fn appendBezierPathWithArcWithCenter_radius_startAngle_endAngle(
483            &self,
484            center: NSPoint,
485            radius: CGFloat,
486            start_angle: CGFloat,
487            end_angle: CGFloat,
488        );
489
490        #[cfg(feature = "objc2-core-foundation")]
491        #[unsafe(method(appendBezierPathWithArcFromPoint:toPoint:radius:))]
492        #[unsafe(method_family = none)]
493        pub unsafe fn appendBezierPathWithArcFromPoint_toPoint_radius(
494            &self,
495            point1: NSPoint,
496            point2: NSPoint,
497            radius: CGFloat,
498        );
499
500        #[cfg(all(feature = "NSFont", feature = "objc2-core-graphics"))]
501        #[cfg(target_vendor = "apple")]
502        #[unsafe(method(appendBezierPathWithCGGlyph:inFont:))]
503        #[unsafe(method_family = none)]
504        pub unsafe fn appendBezierPathWithCGGlyph_inFont(&self, glyph: CGGlyph, font: &NSFont);
505
506        #[cfg(all(feature = "NSFont", feature = "objc2-core-graphics"))]
507        #[cfg(target_vendor = "apple")]
508        #[unsafe(method(appendBezierPathWithCGGlyphs:count:inFont:))]
509        #[unsafe(method_family = none)]
510        pub unsafe fn appendBezierPathWithCGGlyphs_count_inFont(
511            &self,
512            glyphs: NonNull<CGGlyph>,
513            count: NSInteger,
514            font: &NSFont,
515        );
516
517        #[cfg(feature = "objc2-core-foundation")]
518        #[unsafe(method(appendBezierPathWithRoundedRect:xRadius:yRadius:))]
519        #[unsafe(method_family = none)]
520        pub unsafe fn appendBezierPathWithRoundedRect_xRadius_yRadius(
521            &self,
522            rect: NSRect,
523            x_radius: CGFloat,
524            y_radius: CGFloat,
525        );
526
527        #[unsafe(method(containsPoint:))]
528        #[unsafe(method_family = none)]
529        pub unsafe fn containsPoint(&self, point: NSPoint) -> bool;
530    );
531}
532
533/// Methods declared on superclass `NSObject`.
534impl NSBezierPath {
535    extern_methods!(
536        #[unsafe(method(init))]
537        #[unsafe(method_family = init)]
538        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
539
540        #[unsafe(method(new))]
541        #[unsafe(method_family = new)]
542        pub unsafe fn new() -> Retained<Self>;
543    );
544}
545
546/// NSBezierPathDeprecated.
547impl NSBezierPath {
548    extern_methods!(
549        #[deprecated]
550        #[unsafe(method(cachesBezierPath))]
551        #[unsafe(method_family = none)]
552        pub unsafe fn cachesBezierPath(&self) -> bool;
553
554        #[deprecated]
555        #[unsafe(method(setCachesBezierPath:))]
556        #[unsafe(method_family = none)]
557        pub unsafe fn setCachesBezierPath(&self, flag: bool);
558
559        #[cfg(feature = "NSFont")]
560        #[deprecated = "Use -appendBezierPathWithCGGlyph:inFont: instead"]
561        #[unsafe(method(appendBezierPathWithGlyph:inFont:))]
562        #[unsafe(method_family = none)]
563        pub unsafe fn appendBezierPathWithGlyph_inFont(&self, glyph: NSGlyph, font: &NSFont);
564
565        #[cfg(feature = "NSFont")]
566        #[deprecated = "Use -appendBezierPathWithCGGlyphs:count:inFont: instead"]
567        #[unsafe(method(appendBezierPathWithGlyphs:count:inFont:))]
568        #[unsafe(method_family = none)]
569        pub unsafe fn appendBezierPathWithGlyphs_count_inFont(
570            &self,
571            glyphs: NonNull<NSGlyph>,
572            count: NSInteger,
573            font: &NSFont,
574        );
575
576        #[deprecated = "Use -appendBezierPathWithCGGlyphs:count:inFont: instead"]
577        #[unsafe(method(appendBezierPathWithPackedGlyphs:))]
578        #[unsafe(method_family = none)]
579        pub unsafe fn appendBezierPathWithPackedGlyphs(&self, packed_glyphs: NonNull<c_char>);
580    );
581}
582
583/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsbuttlinecapstyle?language=objc)
584pub static NSButtLineCapStyle: NSLineCapStyle = NSLineCapStyle(NSLineCapStyle::Butt.0);
585
586/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsroundlinecapstyle?language=objc)
587pub static NSRoundLineCapStyle: NSLineCapStyle = NSLineCapStyle(NSLineCapStyle::Round.0);
588
589/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nssquarelinecapstyle?language=objc)
590pub static NSSquareLineCapStyle: NSLineCapStyle = NSLineCapStyle(NSLineCapStyle::Square.0);
591
592/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsmiterlinejoinstyle?language=objc)
593pub static NSMiterLineJoinStyle: NSLineJoinStyle = NSLineJoinStyle(NSLineJoinStyle::Miter.0);
594
595/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsroundlinejoinstyle?language=objc)
596pub static NSRoundLineJoinStyle: NSLineJoinStyle = NSLineJoinStyle(NSLineJoinStyle::Round.0);
597
598/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsbevellinejoinstyle?language=objc)
599pub static NSBevelLineJoinStyle: NSLineJoinStyle = NSLineJoinStyle(NSLineJoinStyle::Bevel.0);
600
601/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsnonzerowindingrule?language=objc)
602pub static NSNonZeroWindingRule: NSWindingRule = NSWindingRule(NSWindingRule::NonZero.0);
603
604/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsevenoddwindingrule?language=objc)
605pub static NSEvenOddWindingRule: NSWindingRule = NSWindingRule(NSWindingRule::EvenOdd.0);
606
607/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsmovetobezierpathelement?language=objc)
608pub static NSMoveToBezierPathElement: NSBezierPathElement =
609    NSBezierPathElement(NSBezierPathElement::MoveTo.0);
610
611/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nslinetobezierpathelement?language=objc)
612pub static NSLineToBezierPathElement: NSBezierPathElement =
613    NSBezierPathElement(NSBezierPathElement::LineTo.0);
614
615/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nscurvetobezierpathelement?language=objc)
616pub static NSCurveToBezierPathElement: NSBezierPathElement =
617    NSBezierPathElement(NSBezierPathElement::CurveTo.0);
618
619/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsclosepathbezierpathelement?language=objc)
620pub static NSClosePathBezierPathElement: NSBezierPathElement =
621    NSBezierPathElement(NSBezierPathElement::ClosePath.0);