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::Block<dyn Fn(*mut UIActivityType, Bool)>;
36
37#[cfg(all(feature = "UIActivity", feature = "block2"))]
39pub type UIActivityViewControllerCompletionWithItemsHandler =
40 *mut block2::Block<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"))]
51unsafe impl NSCoding for UIActivityViewController {}
52
53#[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
54unsafe impl NSObjectProtocol for UIActivityViewController {}
55
56#[cfg(all(
57 feature = "UIAppearance",
58 feature = "UIResponder",
59 feature = "UIViewController"
60))]
61unsafe impl UIAppearanceContainer for UIActivityViewController {}
62
63#[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
64unsafe impl UIContentContainer for UIActivityViewController {}
65
66#[cfg(all(
67 feature = "UIFocus",
68 feature = "UIResponder",
69 feature = "UIViewController"
70))]
71unsafe impl UIFocusEnvironment for UIActivityViewController {}
72
73#[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
74unsafe impl UIResponderStandardEditActions for UIActivityViewController {}
75
76#[cfg(all(
77 feature = "UIResponder",
78 feature = "UITraitCollection",
79 feature = "UIViewController"
80))]
81unsafe impl UITraitEnvironment for UIActivityViewController {}
82
83#[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
84impl UIActivityViewController {
85 extern_methods!(
86 #[unsafe(method(init))]
87 #[unsafe(method_family = init)]
88 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
89
90 #[unsafe(method(initWithNibName:bundle:))]
91 #[unsafe(method_family = init)]
92 pub unsafe fn initWithNibName_bundle(
93 this: Allocated<Self>,
94 nib_name_or_nil: Option<&NSString>,
95 nib_bundle_or_nil: Option<&NSBundle>,
96 ) -> Retained<Self>;
97
98 #[unsafe(method(initWithCoder:))]
99 #[unsafe(method_family = init)]
100 pub unsafe fn initWithCoder(
101 this: Allocated<Self>,
102 coder: &NSCoder,
103 ) -> Option<Retained<Self>>;
104
105 #[cfg(feature = "UIActivity")]
106 #[unsafe(method(initWithActivityItems:applicationActivities:))]
107 #[unsafe(method_family = init)]
108 pub unsafe fn initWithActivityItems_applicationActivities(
109 this: Allocated<Self>,
110 activity_items: &NSArray,
111 application_activities: Option<&NSArray<UIActivity>>,
112 ) -> Retained<Self>;
113
114 #[cfg(all(feature = "UIActivity", feature = "block2"))]
115 #[deprecated]
116 #[unsafe(method(completionHandler))]
117 #[unsafe(method_family = none)]
118 pub unsafe fn completionHandler(&self) -> UIActivityViewControllerCompletionHandler;
119
120 #[cfg(all(feature = "UIActivity", feature = "block2"))]
121 #[deprecated]
123 #[unsafe(method(setCompletionHandler:))]
124 #[unsafe(method_family = none)]
125 pub unsafe fn setCompletionHandler(
126 &self,
127 completion_handler: UIActivityViewControllerCompletionHandler,
128 );
129
130 #[cfg(all(feature = "UIActivity", feature = "block2"))]
131 #[unsafe(method(completionWithItemsHandler))]
132 #[unsafe(method_family = none)]
133 pub unsafe fn completionWithItemsHandler(
134 &self,
135 ) -> UIActivityViewControllerCompletionWithItemsHandler;
136
137 #[cfg(all(feature = "UIActivity", feature = "block2"))]
138 #[unsafe(method(setCompletionWithItemsHandler:))]
140 #[unsafe(method_family = none)]
141 pub unsafe fn setCompletionWithItemsHandler(
142 &self,
143 completion_with_items_handler: UIActivityViewControllerCompletionWithItemsHandler,
144 );
145
146 #[cfg(feature = "UIActivity")]
147 #[unsafe(method(excludedActivityTypes))]
148 #[unsafe(method_family = none)]
149 pub unsafe fn excludedActivityTypes(&self) -> Option<Retained<NSArray<UIActivityType>>>;
150
151 #[cfg(feature = "UIActivity")]
152 #[unsafe(method(setExcludedActivityTypes:))]
154 #[unsafe(method_family = none)]
155 pub unsafe fn setExcludedActivityTypes(
156 &self,
157 excluded_activity_types: Option<&NSArray<UIActivityType>>,
158 );
159
160 #[unsafe(method(excludedActivitySectionTypes))]
162 #[unsafe(method_family = none)]
163 pub unsafe fn excludedActivitySectionTypes(&self) -> UIActivitySectionTypes;
164
165 #[unsafe(method(setExcludedActivitySectionTypes:))]
167 #[unsafe(method_family = none)]
168 pub unsafe fn setExcludedActivitySectionTypes(
169 &self,
170 excluded_activity_section_types: UIActivitySectionTypes,
171 );
172
173 #[unsafe(method(allowsProminentActivity))]
177 #[unsafe(method_family = none)]
178 pub unsafe fn allowsProminentActivity(&self) -> bool;
179
180 #[unsafe(method(setAllowsProminentActivity:))]
182 #[unsafe(method_family = none)]
183 pub unsafe fn setAllowsProminentActivity(&self, allows_prominent_activity: bool);
184 );
185}
186
187#[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
189impl UIActivityViewController {
190 extern_methods!(
191 #[unsafe(method(new))]
192 #[unsafe(method_family = new)]
193 pub unsafe fn new(mtm: MainThreadMarker) -> Retained<Self>;
194 );
195}
196
197#[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
199impl UIActivityViewController {
200 extern_methods!(
201 #[cfg(feature = "UIActivityItemsConfigurationReading")]
202 #[unsafe(method(initWithActivityItemsConfiguration:))]
203 #[unsafe(method_family = init)]
204 pub unsafe fn initWithActivityItemsConfiguration(
205 this: Allocated<Self>,
206 activity_items_configuration: &ProtocolObject<dyn UIActivityItemsConfigurationReading>,
207 ) -> Retained<Self>;
208 );
209}