objc2_ui_kit/generated/
UIAccessibilityContainer.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
10mod private_NSObjectUIAccessibilityContainer {
11    pub trait Sealed {}
12}
13
14/// Category "UIAccessibilityContainer" on [`NSObject`].
15#[doc(alias = "UIAccessibilityContainer")]
16pub unsafe trait NSObjectUIAccessibilityContainer:
17    ClassType + Sized + private_NSObjectUIAccessibilityContainer::Sealed
18{
19    extern_methods!(
20        #[unsafe(method(accessibilityElementCount))]
21        #[unsafe(method_family = none)]
22        unsafe fn accessibilityElementCount(&self, mtm: MainThreadMarker) -> NSInteger;
23
24        #[unsafe(method(accessibilityElementAtIndex:))]
25        #[unsafe(method_family = none)]
26        unsafe fn accessibilityElementAtIndex(
27            &self,
28            index: NSInteger,
29            mtm: MainThreadMarker,
30        ) -> Option<Retained<AnyObject>>;
31
32        #[unsafe(method(indexOfAccessibilityElement:))]
33        #[unsafe(method_family = none)]
34        unsafe fn indexOfAccessibilityElement(
35            &self,
36            element: &AnyObject,
37            mtm: MainThreadMarker,
38        ) -> NSInteger;
39
40        #[unsafe(method(accessibilityElements))]
41        #[unsafe(method_family = none)]
42        unsafe fn accessibilityElements(&self, mtm: MainThreadMarker) -> Option<Retained<NSArray>>;
43
44        /// Setter for [`accessibilityElements`][Self::accessibilityElements].
45        #[unsafe(method(setAccessibilityElements:))]
46        #[unsafe(method_family = none)]
47        unsafe fn setAccessibilityElements(
48            &self,
49            accessibility_elements: Option<&NSArray>,
50            mtm: MainThreadMarker,
51        );
52
53        #[cfg(feature = "UIAccessibilityConstants")]
54        #[unsafe(method(accessibilityContainerType))]
55        #[unsafe(method_family = none)]
56        unsafe fn accessibilityContainerType(
57            &self,
58            mtm: MainThreadMarker,
59        ) -> UIAccessibilityContainerType;
60
61        #[cfg(feature = "UIAccessibilityConstants")]
62        /// Setter for [`accessibilityContainerType`][Self::accessibilityContainerType].
63        #[unsafe(method(setAccessibilityContainerType:))]
64        #[unsafe(method_family = none)]
65        unsafe fn setAccessibilityContainerType(
66            &self,
67            accessibility_container_type: UIAccessibilityContainerType,
68            mtm: MainThreadMarker,
69        );
70
71        #[unsafe(method(automationElements))]
72        #[unsafe(method_family = none)]
73        unsafe fn automationElements(&self, mtm: MainThreadMarker) -> Option<Retained<NSArray>>;
74
75        /// Setter for [`automationElements`][Self::automationElements].
76        #[unsafe(method(setAutomationElements:))]
77        #[unsafe(method_family = none)]
78        unsafe fn setAutomationElements(
79            &self,
80            automation_elements: Option<&NSArray>,
81            mtm: MainThreadMarker,
82        );
83    );
84}
85
86impl private_NSObjectUIAccessibilityContainer::Sealed for NSObject {}
87unsafe impl NSObjectUIAccessibilityContainer for NSObject {}
88
89extern_protocol!(
90    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uiaccessibilitycontainerdatatablecell?language=objc)
91    pub unsafe trait UIAccessibilityContainerDataTableCell:
92        NSObjectProtocol + MainThreadOnly
93    {
94        #[unsafe(method(accessibilityRowRange))]
95        #[unsafe(method_family = none)]
96        unsafe fn accessibilityRowRange(&self) -> NSRange;
97
98        #[unsafe(method(accessibilityColumnRange))]
99        #[unsafe(method_family = none)]
100        unsafe fn accessibilityColumnRange(&self) -> NSRange;
101    }
102);
103
104extern_protocol!(
105    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uiaccessibilitycontainerdatatable?language=objc)
106    pub unsafe trait UIAccessibilityContainerDataTable:
107        NSObjectProtocol + MainThreadOnly
108    {
109        #[unsafe(method(accessibilityDataTableCellElementForRow:column:))]
110        #[unsafe(method_family = none)]
111        unsafe fn accessibilityDataTableCellElementForRow_column(
112            &self,
113            row: NSUInteger,
114            column: NSUInteger,
115        ) -> Option<Retained<ProtocolObject<dyn UIAccessibilityContainerDataTableCell>>>;
116
117        #[unsafe(method(accessibilityRowCount))]
118        #[unsafe(method_family = none)]
119        unsafe fn accessibilityRowCount(&self) -> NSUInteger;
120
121        #[unsafe(method(accessibilityColumnCount))]
122        #[unsafe(method_family = none)]
123        unsafe fn accessibilityColumnCount(&self) -> NSUInteger;
124
125        #[optional]
126        #[unsafe(method(accessibilityHeaderElementsForRow:))]
127        #[unsafe(method_family = none)]
128        unsafe fn accessibilityHeaderElementsForRow(
129            &self,
130            row: NSUInteger,
131        ) -> Option<Retained<NSArray<ProtocolObject<dyn UIAccessibilityContainerDataTableCell>>>>;
132
133        #[optional]
134        #[unsafe(method(accessibilityHeaderElementsForColumn:))]
135        #[unsafe(method_family = none)]
136        unsafe fn accessibilityHeaderElementsForColumn(
137            &self,
138            column: NSUInteger,
139        ) -> Option<Retained<NSArray<ProtocolObject<dyn UIAccessibilityContainerDataTableCell>>>>;
140    }
141);