objc2_ui_kit/generated/
UIActivityItemsConfiguration.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::*;
8use objc2_foundation::*;
9
10use crate::*;
11
12extern_class!(
13    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uiactivityitemsconfiguration?language=objc)
14    #[unsafe(super(NSObject))]
15    #[thread_kind = MainThreadOnly]
16    #[derive(Debug, PartialEq, Eq, Hash)]
17    pub struct UIActivityItemsConfiguration;
18);
19
20extern_conformance!(
21    unsafe impl NSObjectProtocol for UIActivityItemsConfiguration {}
22);
23
24#[cfg(feature = "UIActivityItemsConfigurationReading")]
25extern_conformance!(
26    unsafe impl UIActivityItemsConfigurationReading for UIActivityItemsConfiguration {}
27);
28
29impl UIActivityItemsConfiguration {
30    extern_methods!(
31        #[unsafe(method(localObject))]
32        #[unsafe(method_family = none)]
33        pub fn localObject(&self) -> Option<Retained<AnyObject>>;
34
35        /// Setter for [`localObject`][Self::localObject].
36        ///
37        /// # Safety
38        ///
39        /// `local_object` should be of the correct type.
40        #[unsafe(method(setLocalObject:))]
41        #[unsafe(method_family = none)]
42        pub unsafe fn setLocalObject(&self, local_object: Option<&AnyObject>);
43
44        #[cfg(feature = "UIActivityItemsConfigurationReading")]
45        #[unsafe(method(supportedInteractions))]
46        #[unsafe(method_family = none)]
47        pub fn supportedInteractions(
48            &self,
49        ) -> Retained<NSArray<UIActivityItemsConfigurationInteraction>>;
50
51        #[cfg(feature = "UIActivityItemsConfigurationReading")]
52        /// Setter for [`supportedInteractions`][Self::supportedInteractions].
53        ///
54        /// This is [copied][objc2_foundation::NSCopying::copy] when set.
55        #[unsafe(method(setSupportedInteractions:))]
56        #[unsafe(method_family = none)]
57        pub fn setSupportedInteractions(
58            &self,
59            supported_interactions: &NSArray<UIActivityItemsConfigurationInteraction>,
60        );
61
62        #[cfg(all(feature = "UIActivityItemsConfigurationReading", feature = "block2"))]
63        /// # Safety
64        ///
65        /// The returned block's argument must be a valid pointer.
66        #[unsafe(method(metadataProvider))]
67        #[unsafe(method_family = none)]
68        pub unsafe fn metadataProvider(
69            &self,
70        ) -> *mut block2::DynBlock<
71            dyn Fn(NonNull<UIActivityItemsConfigurationMetadataKey>) -> *mut AnyObject,
72        >;
73
74        #[cfg(all(feature = "UIActivityItemsConfigurationReading", feature = "block2"))]
75        /// Setter for [`metadataProvider`][Self::metadataProvider].
76        ///
77        /// # Safety
78        ///
79        /// `metadata_provider` block's return must be a valid pointer or null.
80        #[unsafe(method(setMetadataProvider:))]
81        #[unsafe(method_family = none)]
82        pub unsafe fn setMetadataProvider(
83            &self,
84            metadata_provider: Option<
85                &block2::DynBlock<
86                    dyn Fn(NonNull<UIActivityItemsConfigurationMetadataKey>) -> *mut AnyObject,
87                >,
88            >,
89        );
90
91        #[cfg(all(feature = "UIActivityItemsConfigurationReading", feature = "block2"))]
92        /// # Safety
93        ///
94        /// The returned block's argument 2 must be a valid pointer.
95        #[unsafe(method(perItemMetadataProvider))]
96        #[unsafe(method_family = none)]
97        pub unsafe fn perItemMetadataProvider(
98            &self,
99        ) -> *mut block2::DynBlock<
100            dyn Fn(NSInteger, NonNull<UIActivityItemsConfigurationMetadataKey>) -> *mut AnyObject,
101        >;
102
103        #[cfg(all(feature = "UIActivityItemsConfigurationReading", feature = "block2"))]
104        /// Setter for [`perItemMetadataProvider`][Self::perItemMetadataProvider].
105        ///
106        /// # Safety
107        ///
108        /// `per_item_metadata_provider` block's return must be a valid pointer or null.
109        #[unsafe(method(setPerItemMetadataProvider:))]
110        #[unsafe(method_family = none)]
111        pub unsafe fn setPerItemMetadataProvider(
112            &self,
113            per_item_metadata_provider: Option<
114                &block2::DynBlock<
115                    dyn Fn(
116                        NSInteger,
117                        NonNull<UIActivityItemsConfigurationMetadataKey>,
118                    ) -> *mut AnyObject,
119                >,
120            >,
121        );
122
123        #[cfg(all(
124            feature = "UIActivityItemsConfigurationReading",
125            feature = "block2",
126            feature = "objc2-core-foundation"
127        ))]
128        /// # Safety
129        ///
130        /// The returned block's argument 2 must be a valid pointer.
131        #[unsafe(method(previewProvider))]
132        #[unsafe(method_family = none)]
133        pub unsafe fn previewProvider(
134            &self,
135        ) -> *mut block2::DynBlock<
136            dyn Fn(
137                NSInteger,
138                NonNull<UIActivityItemsConfigurationPreviewIntent>,
139                CGSize,
140            ) -> *mut NSItemProvider,
141        >;
142
143        #[cfg(all(
144            feature = "UIActivityItemsConfigurationReading",
145            feature = "block2",
146            feature = "objc2-core-foundation"
147        ))]
148        /// Setter for [`previewProvider`][Self::previewProvider].
149        ///
150        /// # Safety
151        ///
152        /// `preview_provider` block's return must be a valid pointer or null.
153        #[unsafe(method(setPreviewProvider:))]
154        #[unsafe(method_family = none)]
155        pub unsafe fn setPreviewProvider(
156            &self,
157            preview_provider: Option<
158                &block2::DynBlock<
159                    dyn Fn(
160                        NSInteger,
161                        NonNull<UIActivityItemsConfigurationPreviewIntent>,
162                        CGSize,
163                    ) -> *mut NSItemProvider,
164                >,
165            >,
166        );
167
168        #[cfg(all(feature = "UIActivity", feature = "block2"))]
169        #[unsafe(method(applicationActivitiesProvider))]
170        #[unsafe(method_family = none)]
171        pub fn applicationActivitiesProvider(
172            &self,
173        ) -> *mut block2::DynBlock<dyn Fn() -> NonNull<NSArray<UIActivity>>>;
174
175        #[cfg(all(feature = "UIActivity", feature = "block2"))]
176        /// Setter for [`applicationActivitiesProvider`][Self::applicationActivitiesProvider].
177        ///
178        /// # Safety
179        ///
180        /// `application_activities_provider` block's return must be a valid pointer.
181        #[unsafe(method(setApplicationActivitiesProvider:))]
182        #[unsafe(method_family = none)]
183        pub unsafe fn setApplicationActivitiesProvider(
184            &self,
185            application_activities_provider: Option<
186                &block2::DynBlock<dyn Fn() -> NonNull<NSArray<UIActivity>>>,
187            >,
188        );
189
190        #[unsafe(method(activityItemsConfigurationWithObjects:))]
191        #[unsafe(method_family = none)]
192        pub fn activityItemsConfigurationWithObjects(
193            objects: &NSArray<ProtocolObject<dyn NSItemProviderWriting>>,
194            mtm: MainThreadMarker,
195        ) -> Retained<Self>;
196
197        #[unsafe(method(activityItemsConfigurationWithItemProviders:))]
198        #[unsafe(method_family = none)]
199        pub fn activityItemsConfigurationWithItemProviders(
200            item_providers: &NSArray<NSItemProvider>,
201            mtm: MainThreadMarker,
202        ) -> Retained<Self>;
203
204        #[unsafe(method(initWithObjects:))]
205        #[unsafe(method_family = init)]
206        pub fn initWithObjects(
207            this: Allocated<Self>,
208            objects: &NSArray<ProtocolObject<dyn NSItemProviderWriting>>,
209        ) -> Retained<Self>;
210
211        #[unsafe(method(initWithItemProviders:))]
212        #[unsafe(method_family = init)]
213        pub fn initWithItemProviders(
214            this: Allocated<Self>,
215            item_providers: &NSArray<NSItemProvider>,
216        ) -> Retained<Self>;
217
218        #[unsafe(method(init))]
219        #[unsafe(method_family = init)]
220        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
221
222        #[unsafe(method(new))]
223        #[unsafe(method_family = new)]
224        pub unsafe fn new(mtm: MainThreadMarker) -> Retained<Self>;
225    );
226}