objc2_ui_kit/generated/
UIActivity.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10pub type UIActivityType = NSString;
13
14extern "C" {
15 pub static UIActivityTypePostToFacebook: &'static UIActivityType;
17}
18
19extern "C" {
20 pub static UIActivityTypePostToTwitter: &'static UIActivityType;
22}
23
24extern "C" {
25 pub static UIActivityTypePostToWeibo: &'static UIActivityType;
27}
28
29extern "C" {
30 pub static UIActivityTypeMessage: &'static UIActivityType;
32}
33
34extern "C" {
35 pub static UIActivityTypeMail: &'static UIActivityType;
37}
38
39extern "C" {
40 pub static UIActivityTypePrint: &'static UIActivityType;
42}
43
44extern "C" {
45 pub static UIActivityTypeCopyToPasteboard: &'static UIActivityType;
47}
48
49extern "C" {
50 pub static UIActivityTypeAssignToContact: &'static UIActivityType;
52}
53
54extern "C" {
55 pub static UIActivityTypeSaveToCameraRoll: &'static UIActivityType;
57}
58
59extern "C" {
60 pub static UIActivityTypeAddToReadingList: &'static UIActivityType;
62}
63
64extern "C" {
65 pub static UIActivityTypePostToFlickr: &'static UIActivityType;
67}
68
69extern "C" {
70 pub static UIActivityTypePostToVimeo: &'static UIActivityType;
72}
73
74extern "C" {
75 pub static UIActivityTypePostToTencentWeibo: &'static UIActivityType;
77}
78
79extern "C" {
80 pub static UIActivityTypeAirDrop: &'static UIActivityType;
82}
83
84extern "C" {
85 pub static UIActivityTypeOpenInIBooks: &'static UIActivityType;
87}
88
89extern "C" {
90 pub static UIActivityTypeMarkupAsPDF: &'static UIActivityType;
92}
93
94extern "C" {
95 pub static UIActivityTypeSharePlay: &'static UIActivityType;
97}
98
99extern "C" {
100 pub static UIActivityTypeCollaborationInviteWithLink: &'static UIActivityType;
102}
103
104extern "C" {
105 pub static UIActivityTypeCollaborationCopyLink: &'static UIActivityType;
107}
108
109extern "C" {
110 pub static UIActivityTypeAddToHomeScreen: &'static UIActivityType;
112}
113
114#[repr(transparent)]
117#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
118pub struct UIActivityCategory(pub NSInteger);
119impl UIActivityCategory {
120 #[doc(alias = "UIActivityCategoryAction")]
121 pub const Action: Self = Self(0);
122 #[doc(alias = "UIActivityCategoryShare")]
123 pub const Share: Self = Self(1);
124}
125
126unsafe impl Encode for UIActivityCategory {
127 const ENCODING: Encoding = NSInteger::ENCODING;
128}
129
130unsafe impl RefEncode for UIActivityCategory {
131 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
132}
133
134extern_class!(
135 #[unsafe(super(NSObject))]
137 #[derive(Debug, PartialEq, Eq, Hash)]
138 pub struct UIActivity;
139);
140
141extern_conformance!(
142 unsafe impl NSObjectProtocol for UIActivity {}
143);
144
145impl UIActivity {
146 extern_methods!(
147 #[unsafe(method(activityCategory))]
148 #[unsafe(method_family = none)]
149 pub fn activityCategory() -> UIActivityCategory;
150
151 #[unsafe(method(activityType))]
152 #[unsafe(method_family = none)]
153 pub fn activityType(&self) -> Option<Retained<UIActivityType>>;
154
155 #[unsafe(method(activityTitle))]
156 #[unsafe(method_family = none)]
157 pub fn activityTitle(&self) -> Option<Retained<NSString>>;
158
159 #[cfg(feature = "UIImage")]
160 #[unsafe(method(activityImage))]
161 #[unsafe(method_family = none)]
162 pub fn activityImage(&self) -> Option<Retained<UIImage>>;
163
164 #[unsafe(method(canPerformWithActivityItems:))]
168 #[unsafe(method_family = none)]
169 pub unsafe fn canPerformWithActivityItems(&self, activity_items: &NSArray) -> bool;
170
171 #[unsafe(method(prepareWithActivityItems:))]
175 #[unsafe(method_family = none)]
176 pub unsafe fn prepareWithActivityItems(&self, activity_items: &NSArray);
177
178 #[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
179 #[unsafe(method(activityViewController))]
180 #[unsafe(method_family = none)]
181 pub fn activityViewController(
182 &self,
183 mtm: MainThreadMarker,
184 ) -> Option<Retained<UIViewController>>;
185
186 #[unsafe(method(performActivity))]
187 #[unsafe(method_family = none)]
188 pub fn performActivity(&self);
189
190 #[unsafe(method(activityDidFinish:))]
191 #[unsafe(method_family = none)]
192 pub fn activityDidFinish(&self, completed: bool);
193 );
194}
195
196impl UIActivity {
198 extern_methods!(
199 #[unsafe(method(init))]
200 #[unsafe(method_family = init)]
201 pub fn init(this: Allocated<Self>) -> Retained<Self>;
202
203 #[unsafe(method(new))]
204 #[unsafe(method_family = new)]
205 pub fn new() -> Retained<Self>;
206 );
207}
208
209impl DefaultRetained for UIActivity {
210 #[inline]
211 fn default_retained() -> Retained<Self> {
212 Self::new()
213 }
214}