objc2_ui_kit/generated/
UIActivityItemProvider.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ptr::NonNull;
4use objc2::__framework_prelude::*;
5#[cfg(feature = "objc2-core-foundation")]
6use objc2_core_foundation::*;
7use objc2_foundation::*;
8
9use crate::*;
10
11extern_protocol!(
12    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uiactivityitemsource?language=objc)
13    pub unsafe trait UIActivityItemSource: NSObjectProtocol {
14        #[cfg(all(
15            feature = "UIActivityViewController",
16            feature = "UIResponder",
17            feature = "UIViewController"
18        ))]
19        #[unsafe(method(activityViewControllerPlaceholderItem:))]
20        #[unsafe(method_family = none)]
21        unsafe fn activityViewControllerPlaceholderItem(
22            &self,
23            activity_view_controller: &UIActivityViewController,
24        ) -> Retained<AnyObject>;
25
26        #[cfg(all(
27            feature = "UIActivity",
28            feature = "UIActivityViewController",
29            feature = "UIResponder",
30            feature = "UIViewController"
31        ))]
32        #[unsafe(method(activityViewController:itemForActivityType:))]
33        #[unsafe(method_family = none)]
34        unsafe fn activityViewController_itemForActivityType(
35            &self,
36            activity_view_controller: &UIActivityViewController,
37            activity_type: Option<&UIActivityType>,
38        ) -> Option<Retained<AnyObject>>;
39
40        #[cfg(all(
41            feature = "UIActivity",
42            feature = "UIActivityViewController",
43            feature = "UIResponder",
44            feature = "UIViewController"
45        ))]
46        #[optional]
47        #[unsafe(method(activityViewController:subjectForActivityType:))]
48        #[unsafe(method_family = none)]
49        unsafe fn activityViewController_subjectForActivityType(
50            &self,
51            activity_view_controller: &UIActivityViewController,
52            activity_type: Option<&UIActivityType>,
53        ) -> Retained<NSString>;
54
55        #[cfg(all(
56            feature = "UIActivity",
57            feature = "UIActivityViewController",
58            feature = "UIResponder",
59            feature = "UIViewController"
60        ))]
61        #[optional]
62        #[unsafe(method(activityViewController:dataTypeIdentifierForActivityType:))]
63        #[unsafe(method_family = none)]
64        unsafe fn activityViewController_dataTypeIdentifierForActivityType(
65            &self,
66            activity_view_controller: &UIActivityViewController,
67            activity_type: Option<&UIActivityType>,
68        ) -> Retained<NSString>;
69
70        #[cfg(all(
71            feature = "UIActivity",
72            feature = "UIActivityViewController",
73            feature = "UIImage",
74            feature = "UIResponder",
75            feature = "UIViewController",
76            feature = "objc2-core-foundation"
77        ))]
78        #[optional]
79        #[unsafe(method(activityViewController:thumbnailImageForActivityType:suggestedSize:))]
80        #[unsafe(method_family = none)]
81        unsafe fn activityViewController_thumbnailImageForActivityType_suggestedSize(
82            &self,
83            activity_view_controller: &UIActivityViewController,
84            activity_type: Option<&UIActivityType>,
85            size: CGSize,
86        ) -> Option<Retained<UIImage>>;
87    }
88);
89
90extern_class!(
91    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uiactivityitemprovider?language=objc)
92    #[unsafe(super(NSOperation, NSObject))]
93    #[derive(Debug, PartialEq, Eq, Hash)]
94    pub struct UIActivityItemProvider;
95);
96
97unsafe impl NSObjectProtocol for UIActivityItemProvider {}
98
99unsafe impl UIActivityItemSource for UIActivityItemProvider {}
100
101impl UIActivityItemProvider {
102    extern_methods!(
103        #[unsafe(method(init))]
104        #[unsafe(method_family = init)]
105        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
106
107        #[unsafe(method(initWithPlaceholderItem:))]
108        #[unsafe(method_family = init)]
109        pub unsafe fn initWithPlaceholderItem(
110            this: Allocated<Self>,
111            placeholder_item: &AnyObject,
112        ) -> Retained<Self>;
113
114        #[unsafe(method(placeholderItem))]
115        #[unsafe(method_family = none)]
116        pub unsafe fn placeholderItem(&self) -> Option<Retained<AnyObject>>;
117
118        #[cfg(feature = "UIActivity")]
119        #[unsafe(method(activityType))]
120        #[unsafe(method_family = none)]
121        pub unsafe fn activityType(&self) -> Option<Retained<UIActivityType>>;
122
123        #[unsafe(method(item))]
124        #[unsafe(method_family = none)]
125        pub unsafe fn item(&self) -> Retained<AnyObject>;
126    );
127}
128
129/// Methods declared on superclass `NSObject`.
130impl UIActivityItemProvider {
131    extern_methods!(
132        #[unsafe(method(new))]
133        #[unsafe(method_family = new)]
134        pub unsafe fn new() -> Retained<Self>;
135    );
136}