objc2_ui_kit/generated/
UIActivityViewController.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10#[repr(transparent)]
13#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
14pub struct UIActivitySectionTypes(pub NSUInteger);
15bitflags::bitflags! {
16 impl UIActivitySectionTypes: NSUInteger {
17 #[doc(alias = "UIActivitySectionTypesNone")]
18 const None = 0;
19 #[doc(alias = "UIActivitySectionTypesPeopleSuggestions")]
20 const PeopleSuggestions = 1<<0;
21 }
22}
23
24unsafe impl Encode for UIActivitySectionTypes {
25 const ENCODING: Encoding = NSUInteger::ENCODING;
26}
27
28unsafe impl RefEncode for UIActivitySectionTypes {
29 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
30}
31
32#[cfg(all(feature = "UIActivity", feature = "block2"))]
34pub type UIActivityViewControllerCompletionHandler =
35 *mut block2::DynBlock<dyn Fn(*mut UIActivityType, Bool)>;
36
37#[cfg(all(feature = "UIActivity", feature = "block2"))]
39pub type UIActivityViewControllerCompletionWithItemsHandler =
40 *mut block2::DynBlock<dyn Fn(*mut UIActivityType, Bool, *mut NSArray, *mut NSError)>;
41
42extern_class!(
43 #[unsafe(super(UIViewController, UIResponder, NSObject))]
45 #[derive(Debug, PartialEq, Eq, Hash)]
46 #[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
47 pub struct UIActivityViewController;
48);
49
50#[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
51extern_conformance!(
52 unsafe impl NSCoding for UIActivityViewController {}
53);
54
55#[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
56extern_conformance!(
57 unsafe impl NSObjectProtocol for UIActivityViewController {}
58);
59
60#[cfg(all(
61 feature = "UIAppearance",
62 feature = "UIResponder",
63 feature = "UIViewController"
64))]
65extern_conformance!(
66 unsafe impl UIAppearanceContainer for UIActivityViewController {}
67);
68
69#[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
70extern_conformance!(
71 unsafe impl UIContentContainer for UIActivityViewController {}
72);
73
74#[cfg(all(
75 feature = "UIFocus",
76 feature = "UIResponder",
77 feature = "UIViewController"
78))]
79extern_conformance!(
80 unsafe impl UIFocusEnvironment for UIActivityViewController {}
81);
82
83#[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
84extern_conformance!(
85 unsafe impl UIResponderStandardEditActions for UIActivityViewController {}
86);
87
88#[cfg(all(
89 feature = "UIResponder",
90 feature = "UITraitCollection",
91 feature = "UIViewController"
92))]
93extern_conformance!(
94 unsafe impl UITraitEnvironment for UIActivityViewController {}
95);
96
97#[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
98impl UIActivityViewController {
99 extern_methods!(
100 #[unsafe(method(init))]
101 #[unsafe(method_family = init)]
102 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
103
104 #[unsafe(method(initWithNibName:bundle:))]
105 #[unsafe(method_family = init)]
106 pub unsafe fn initWithNibName_bundle(
107 this: Allocated<Self>,
108 nib_name_or_nil: Option<&NSString>,
109 nib_bundle_or_nil: Option<&NSBundle>,
110 ) -> Retained<Self>;
111
112 #[unsafe(method(initWithCoder:))]
116 #[unsafe(method_family = init)]
117 pub unsafe fn initWithCoder(
118 this: Allocated<Self>,
119 coder: &NSCoder,
120 ) -> Option<Retained<Self>>;
121
122 #[cfg(feature = "UIActivity")]
123 #[unsafe(method(initWithActivityItems:applicationActivities:))]
127 #[unsafe(method_family = init)]
128 pub unsafe fn initWithActivityItems_applicationActivities(
129 this: Allocated<Self>,
130 activity_items: &NSArray,
131 application_activities: Option<&NSArray<UIActivity>>,
132 ) -> Retained<Self>;
133
134 #[cfg(all(feature = "UIActivity", feature = "block2"))]
135 #[deprecated]
139 #[unsafe(method(completionHandler))]
140 #[unsafe(method_family = none)]
141 pub unsafe fn completionHandler(&self) -> UIActivityViewControllerCompletionHandler;
142
143 #[cfg(all(feature = "UIActivity", feature = "block2"))]
144 #[deprecated]
152 #[unsafe(method(setCompletionHandler:))]
153 #[unsafe(method_family = none)]
154 pub unsafe fn setCompletionHandler(
155 &self,
156 completion_handler: UIActivityViewControllerCompletionHandler,
157 );
158
159 #[cfg(all(feature = "UIActivity", feature = "block2"))]
160 #[unsafe(method(completionWithItemsHandler))]
166 #[unsafe(method_family = none)]
167 pub unsafe fn completionWithItemsHandler(
168 &self,
169 ) -> UIActivityViewControllerCompletionWithItemsHandler;
170
171 #[cfg(all(feature = "UIActivity", feature = "block2"))]
172 #[unsafe(method(setCompletionWithItemsHandler:))]
180 #[unsafe(method_family = none)]
181 pub unsafe fn setCompletionWithItemsHandler(
182 &self,
183 completion_with_items_handler: UIActivityViewControllerCompletionWithItemsHandler,
184 );
185
186 #[cfg(feature = "UIActivity")]
187 #[unsafe(method(excludedActivityTypes))]
188 #[unsafe(method_family = none)]
189 pub fn excludedActivityTypes(&self) -> Option<Retained<NSArray<UIActivityType>>>;
190
191 #[cfg(feature = "UIActivity")]
192 #[unsafe(method(setExcludedActivityTypes:))]
196 #[unsafe(method_family = none)]
197 pub fn setExcludedActivityTypes(
198 &self,
199 excluded_activity_types: Option<&NSArray<UIActivityType>>,
200 );
201
202 #[unsafe(method(excludedActivitySectionTypes))]
204 #[unsafe(method_family = none)]
205 pub fn excludedActivitySectionTypes(&self) -> UIActivitySectionTypes;
206
207 #[unsafe(method(setExcludedActivitySectionTypes:))]
209 #[unsafe(method_family = none)]
210 pub fn setExcludedActivitySectionTypes(
211 &self,
212 excluded_activity_section_types: UIActivitySectionTypes,
213 );
214
215 #[unsafe(method(allowsProminentActivity))]
219 #[unsafe(method_family = none)]
220 pub fn allowsProminentActivity(&self) -> bool;
221
222 #[unsafe(method(setAllowsProminentActivity:))]
224 #[unsafe(method_family = none)]
225 pub fn setAllowsProminentActivity(&self, allows_prominent_activity: bool);
226 );
227}
228
229#[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
231impl UIActivityViewController {
232 extern_methods!(
233 #[unsafe(method(new))]
234 #[unsafe(method_family = new)]
235 pub unsafe fn new(mtm: MainThreadMarker) -> Retained<Self>;
236 );
237}
238
239#[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
241impl UIActivityViewController {
242 extern_methods!(
243 #[cfg(feature = "UIActivityItemsConfigurationReading")]
244 #[unsafe(method(initWithActivityItemsConfiguration:))]
245 #[unsafe(method_family = init)]
246 pub fn initWithActivityItemsConfiguration(
247 this: Allocated<Self>,
248 activity_items_configuration: &ProtocolObject<dyn UIActivityItemsConfigurationReading>,
249 ) -> Retained<Self>;
250 );
251}