objc2_app_kit/generated/
NSHapticFeedback.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
7use crate::*;
8
9/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nshapticfeedbackpattern?language=objc)
10// NS_ENUM
11#[repr(transparent)]
12#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
13pub struct NSHapticFeedbackPattern(pub NSInteger);
14impl NSHapticFeedbackPattern {
15    #[doc(alias = "NSHapticFeedbackPatternGeneric")]
16    pub const Generic: Self = Self(0);
17    #[doc(alias = "NSHapticFeedbackPatternAlignment")]
18    pub const Alignment: Self = Self(1);
19    #[doc(alias = "NSHapticFeedbackPatternLevelChange")]
20    pub const LevelChange: Self = Self(2);
21}
22
23unsafe impl Encode for NSHapticFeedbackPattern {
24    const ENCODING: Encoding = NSInteger::ENCODING;
25}
26
27unsafe impl RefEncode for NSHapticFeedbackPattern {
28    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
29}
30
31/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nshapticfeedbackperformancetime?language=objc)
32// NS_ENUM
33#[repr(transparent)]
34#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
35pub struct NSHapticFeedbackPerformanceTime(pub NSUInteger);
36impl NSHapticFeedbackPerformanceTime {
37    #[doc(alias = "NSHapticFeedbackPerformanceTimeDefault")]
38    pub const Default: Self = Self(0);
39    #[doc(alias = "NSHapticFeedbackPerformanceTimeNow")]
40    pub const Now: Self = Self(1);
41    #[doc(alias = "NSHapticFeedbackPerformanceTimeDrawCompleted")]
42    pub const DrawCompleted: Self = Self(2);
43}
44
45unsafe impl Encode for NSHapticFeedbackPerformanceTime {
46    const ENCODING: Encoding = NSUInteger::ENCODING;
47}
48
49unsafe impl RefEncode for NSHapticFeedbackPerformanceTime {
50    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
51}
52
53extern_protocol!(
54    /// [Apple's documentation](https://developer.apple.com/documentation/appkit/nshapticfeedbackperformer?language=objc)
55    pub unsafe trait NSHapticFeedbackPerformer: NSObjectProtocol {
56        #[unsafe(method(performFeedbackPattern:performanceTime:))]
57        #[unsafe(method_family = none)]
58        fn performFeedbackPattern_performanceTime(
59            &self,
60            pattern: NSHapticFeedbackPattern,
61            performance_time: NSHapticFeedbackPerformanceTime,
62        );
63    }
64);
65
66extern_class!(
67    /// [Apple's documentation](https://developer.apple.com/documentation/appkit/nshapticfeedbackmanager?language=objc)
68    #[unsafe(super(NSObject))]
69    #[derive(Debug, PartialEq, Eq, Hash)]
70    pub struct NSHapticFeedbackManager;
71);
72
73extern_conformance!(
74    unsafe impl NSObjectProtocol for NSHapticFeedbackManager {}
75);
76
77impl NSHapticFeedbackManager {
78    extern_methods!(
79        #[unsafe(method(defaultPerformer))]
80        #[unsafe(method_family = none)]
81        pub fn defaultPerformer() -> Retained<ProtocolObject<dyn NSHapticFeedbackPerformer>>;
82    );
83}
84
85/// Methods declared on superclass `NSObject`.
86impl NSHapticFeedbackManager {
87    extern_methods!(
88        #[unsafe(method(init))]
89        #[unsafe(method_family = init)]
90        pub fn init(this: Allocated<Self>) -> Retained<Self>;
91
92        #[unsafe(method(new))]
93        #[unsafe(method_family = new)]
94        pub fn new() -> Retained<Self>;
95    );
96}
97
98impl DefaultRetained for NSHapticFeedbackManager {
99    #[inline]
100    fn default_retained() -> Retained<Self> {
101        Self::new()
102    }
103}