objc2_accessibility/generated/
AXCustomContent.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::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10/// [Apple's documentation](https://developer.apple.com/documentation/accessibility/axcustomcontentimportance?language=objc)
11// NS_ENUM
12#[repr(transparent)]
13#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
14pub struct AXCustomContentImportance(pub NSUInteger);
15impl AXCustomContentImportance {
16    #[doc(alias = "AXCustomContentImportanceDefault")]
17    pub const Default: Self = Self(0);
18    #[doc(alias = "AXCustomContentImportanceHigh")]
19    pub const High: Self = Self(1);
20}
21
22unsafe impl Encode for AXCustomContentImportance {
23    const ENCODING: Encoding = NSUInteger::ENCODING;
24}
25
26unsafe impl RefEncode for AXCustomContentImportance {
27    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
28}
29
30extern_class!(
31    /// [Apple's documentation](https://developer.apple.com/documentation/accessibility/axcustomcontent?language=objc)
32    #[unsafe(super(NSObject))]
33    #[derive(Debug, PartialEq, Eq, Hash)]
34    pub struct AXCustomContent;
35);
36
37unsafe impl NSCoding for AXCustomContent {}
38
39unsafe impl NSCopying for AXCustomContent {}
40
41unsafe impl CopyingHelper for AXCustomContent {
42    type Result = Self;
43}
44
45unsafe impl NSObjectProtocol for AXCustomContent {}
46
47unsafe impl NSSecureCoding for AXCustomContent {}
48
49impl AXCustomContent {
50    extern_methods!(
51        #[unsafe(method(customContentWithLabel:value:))]
52        #[unsafe(method_family = none)]
53        pub unsafe fn customContentWithLabel_value(
54            label: &NSString,
55            value: &NSString,
56        ) -> Retained<Self>;
57
58        #[unsafe(method(customContentWithAttributedLabel:attributedValue:))]
59        #[unsafe(method_family = none)]
60        pub unsafe fn customContentWithAttributedLabel_attributedValue(
61            label: &NSAttributedString,
62            value: &NSAttributedString,
63        ) -> Retained<Self>;
64
65        #[unsafe(method(label))]
66        #[unsafe(method_family = none)]
67        pub unsafe fn label(&self) -> Retained<NSString>;
68
69        #[unsafe(method(attributedLabel))]
70        #[unsafe(method_family = none)]
71        pub unsafe fn attributedLabel(&self) -> Retained<NSAttributedString>;
72
73        #[unsafe(method(value))]
74        #[unsafe(method_family = none)]
75        pub unsafe fn value(&self) -> Retained<NSString>;
76
77        #[unsafe(method(attributedValue))]
78        #[unsafe(method_family = none)]
79        pub unsafe fn attributedValue(&self) -> Retained<NSAttributedString>;
80
81        #[unsafe(method(importance))]
82        #[unsafe(method_family = none)]
83        pub unsafe fn importance(&self) -> AXCustomContentImportance;
84
85        /// Setter for [`importance`][Self::importance].
86        #[unsafe(method(setImportance:))]
87        #[unsafe(method_family = none)]
88        pub unsafe fn setImportance(&self, importance: AXCustomContentImportance);
89
90        #[unsafe(method(init))]
91        #[unsafe(method_family = init)]
92        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
93
94        #[unsafe(method(new))]
95        #[unsafe(method_family = new)]
96        pub unsafe fn new() -> Retained<Self>;
97    );
98}
99
100/// [Apple's documentation](https://developer.apple.com/documentation/accessibility/axcustomcontentreturnblock?language=objc)
101#[cfg(feature = "block2")]
102pub type AXCustomContentReturnBlock = *mut block2::Block<dyn Fn() -> *mut NSArray<AXCustomContent>>;
103
104extern_protocol!(
105    /// [Apple's documentation](https://developer.apple.com/documentation/accessibility/axcustomcontentprovider?language=objc)
106    pub unsafe trait AXCustomContentProvider: NSObjectProtocol {
107        #[unsafe(method(accessibilityCustomContent))]
108        #[unsafe(method_family = none)]
109        unsafe fn accessibilityCustomContent(&self) -> Retained<NSArray<AXCustomContent>>;
110
111        /// Setter for [`accessibilityCustomContent`][Self::accessibilityCustomContent].
112        #[unsafe(method(setAccessibilityCustomContent:))]
113        #[unsafe(method_family = none)]
114        unsafe fn setAccessibilityCustomContent(
115            &self,
116            accessibility_custom_content: Option<&NSArray<AXCustomContent>>,
117        );
118
119        #[cfg(feature = "block2")]
120        #[optional]
121        #[unsafe(method(accessibilityCustomContentBlock))]
122        #[unsafe(method_family = none)]
123        unsafe fn accessibilityCustomContentBlock(&self) -> AXCustomContentReturnBlock;
124
125        #[cfg(feature = "block2")]
126        /// Setter for [`accessibilityCustomContentBlock`][Self::accessibilityCustomContentBlock].
127        #[optional]
128        #[unsafe(method(setAccessibilityCustomContentBlock:))]
129        #[unsafe(method_family = none)]
130        unsafe fn setAccessibilityCustomContentBlock(
131            &self,
132            accessibility_custom_content_block: AXCustomContentReturnBlock,
133        );
134    }
135);