objc2_shared_with_you/generated/
SWCollaborationView.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-app-kit")]
7#[cfg(target_os = "macos")]
8use objc2_app_kit::*;
9use objc2_foundation::*;
10
11use crate::*;
12
13extern_protocol!(
14    /// [Apple's documentation](https://developer.apple.com/documentation/sharedwithyou/swcollaborationviewdelegate?language=objc)
15    pub unsafe trait SWCollaborationViewDelegate: NSObjectProtocol {
16        #[cfg(feature = "objc2-app-kit")]
17        #[cfg(target_os = "macos")]
18        #[optional]
19        #[unsafe(method(collaborationViewShouldPresentPopover:))]
20        #[unsafe(method_family = none)]
21        unsafe fn collaborationViewShouldPresentPopover(
22            &self,
23            collaboration_view: &SWCollaborationView,
24        ) -> bool;
25
26        #[cfg(feature = "objc2-app-kit")]
27        #[cfg(target_os = "macos")]
28        #[optional]
29        #[unsafe(method(collaborationViewWillPresentPopover:))]
30        #[unsafe(method_family = none)]
31        unsafe fn collaborationViewWillPresentPopover(
32            &self,
33            collaboration_view: &SWCollaborationView,
34        );
35
36        #[cfg(feature = "objc2-app-kit")]
37        #[cfg(target_os = "macos")]
38        #[optional]
39        #[unsafe(method(collaborationViewDidDismissPopover:))]
40        #[unsafe(method_family = none)]
41        unsafe fn collaborationViewDidDismissPopover(
42            &self,
43            collaboration_view: &SWCollaborationView,
44        );
45    }
46);
47
48extern_class!(
49    /// [Apple's documentation](https://developer.apple.com/documentation/sharedwithyou/swcollaborationview?language=objc)
50    #[unsafe(super(NSView, NSResponder, NSObject))]
51    #[derive(Debug, PartialEq, Eq, Hash)]
52    #[cfg(feature = "objc2-app-kit")]
53    #[cfg(target_os = "macos")]
54    pub struct SWCollaborationView;
55);
56
57#[cfg(feature = "objc2-app-kit")]
58#[cfg(target_os = "macos")]
59extern_conformance!(
60    unsafe impl NSAccessibility for SWCollaborationView {}
61);
62
63#[cfg(feature = "objc2-app-kit")]
64#[cfg(target_os = "macos")]
65extern_conformance!(
66    unsafe impl NSAccessibilityElementProtocol for SWCollaborationView {}
67);
68
69#[cfg(feature = "objc2-app-kit")]
70#[cfg(target_os = "macos")]
71extern_conformance!(
72    unsafe impl NSAnimatablePropertyContainer for SWCollaborationView {}
73);
74
75#[cfg(feature = "objc2-app-kit")]
76#[cfg(target_os = "macos")]
77extern_conformance!(
78    unsafe impl NSAppearanceCustomization for SWCollaborationView {}
79);
80
81#[cfg(feature = "objc2-app-kit")]
82#[cfg(target_os = "macos")]
83extern_conformance!(
84    unsafe impl NSCoding for SWCollaborationView {}
85);
86
87#[cfg(feature = "objc2-app-kit")]
88#[cfg(target_os = "macos")]
89extern_conformance!(
90    unsafe impl NSDraggingDestination for SWCollaborationView {}
91);
92
93#[cfg(feature = "objc2-app-kit")]
94#[cfg(target_os = "macos")]
95extern_conformance!(
96    unsafe impl NSObjectProtocol for SWCollaborationView {}
97);
98
99#[cfg(feature = "objc2-app-kit")]
100#[cfg(target_os = "macos")]
101extern_conformance!(
102    unsafe impl NSUserInterfaceItemIdentification for SWCollaborationView {}
103);
104
105#[cfg(feature = "objc2-app-kit")]
106#[cfg(target_os = "macos")]
107impl SWCollaborationView {
108    extern_methods!(
109        #[unsafe(method(cloudSharingDelegate))]
110        #[unsafe(method_family = none)]
111        pub unsafe fn cloudSharingDelegate(
112            &self,
113        ) -> Option<Retained<ProtocolObject<dyn NSCloudSharingServiceDelegate>>>;
114
115        /// This is a [weak property][objc2::topics::weak_property].
116        /// Setter for [`cloudSharingDelegate`][Self::cloudSharingDelegate].
117        #[unsafe(method(setCloudSharingDelegate:))]
118        #[unsafe(method_family = none)]
119        pub unsafe fn setCloudSharingDelegate(
120            &self,
121            cloud_sharing_delegate: Option<&ProtocolObject<dyn NSCloudSharingServiceDelegate>>,
122        );
123
124        #[unsafe(method(setContentView:))]
125        #[unsafe(method_family = none)]
126        pub unsafe fn setContentView(&self, detail_view_list_content_view: &NSView);
127
128        #[unsafe(method(initWithItemProvider:))]
129        #[unsafe(method_family = init)]
130        pub unsafe fn initWithItemProvider(
131            this: Allocated<Self>,
132            item_provider: &NSItemProvider,
133        ) -> Retained<Self>;
134
135        #[unsafe(method(activeParticipantCount))]
136        #[unsafe(method_family = none)]
137        pub unsafe fn activeParticipantCount(&self) -> NSUInteger;
138
139        /// Setter for [`activeParticipantCount`][Self::activeParticipantCount].
140        #[unsafe(method(setActiveParticipantCount:))]
141        #[unsafe(method_family = none)]
142        pub unsafe fn setActiveParticipantCount(&self, active_participant_count: NSUInteger);
143
144        #[unsafe(method(delegate))]
145        #[unsafe(method_family = none)]
146        pub unsafe fn delegate(
147            &self,
148        ) -> Option<Retained<ProtocolObject<dyn SWCollaborationViewDelegate>>>;
149
150        /// This is a [weak property][objc2::topics::weak_property].
151        /// Setter for [`delegate`][Self::delegate].
152        #[unsafe(method(setDelegate:))]
153        #[unsafe(method_family = none)]
154        pub unsafe fn setDelegate(
155            &self,
156            delegate: Option<&ProtocolObject<dyn SWCollaborationViewDelegate>>,
157        );
158
159        #[unsafe(method(headerTitle))]
160        #[unsafe(method_family = none)]
161        pub unsafe fn headerTitle(&self) -> Retained<NSString>;
162
163        /// Setter for [`headerTitle`][Self::headerTitle].
164        #[unsafe(method(setHeaderTitle:))]
165        #[unsafe(method_family = none)]
166        pub unsafe fn setHeaderTitle(&self, header_title: &NSString);
167
168        #[unsafe(method(headerSubtitle))]
169        #[unsafe(method_family = none)]
170        pub unsafe fn headerSubtitle(&self) -> Retained<NSString>;
171
172        /// Setter for [`headerSubtitle`][Self::headerSubtitle].
173        #[unsafe(method(setHeaderSubtitle:))]
174        #[unsafe(method_family = none)]
175        pub unsafe fn setHeaderSubtitle(&self, header_subtitle: &NSString);
176
177        #[unsafe(method(headerImage))]
178        #[unsafe(method_family = none)]
179        pub unsafe fn headerImage(&self) -> Retained<NSImage>;
180
181        /// Setter for [`headerImage`][Self::headerImage].
182        #[unsafe(method(setHeaderImage:))]
183        #[unsafe(method_family = none)]
184        pub unsafe fn setHeaderImage(&self, header_image: &NSImage);
185
186        #[unsafe(method(menuFormRepresentation))]
187        #[unsafe(method_family = none)]
188        pub unsafe fn menuFormRepresentation(&self) -> Retained<NSMenuItem>;
189
190        /// If you are using the built in manage share button, this delegate property will be forwarded along to the NSCloudSharingService that button presents. If you have your own and suppress the provided one via setShowManageButton, this does nothing.
191        #[unsafe(method(cloudSharingServiceDelegate))]
192        #[unsafe(method_family = none)]
193        pub unsafe fn cloudSharingServiceDelegate(
194            &self,
195        ) -> Option<Retained<ProtocolObject<dyn NSCloudSharingServiceDelegate>>>;
196
197        /// This is a [weak property][objc2::topics::weak_property].
198        /// Setter for [`cloudSharingServiceDelegate`][Self::cloudSharingServiceDelegate].
199        #[unsafe(method(setCloudSharingServiceDelegate:))]
200        #[unsafe(method_family = none)]
201        pub unsafe fn setCloudSharingServiceDelegate(
202            &self,
203            cloud_sharing_service_delegate: Option<
204                &ProtocolObject<dyn NSCloudSharingServiceDelegate>,
205            >,
206        );
207
208        #[cfg(feature = "block2")]
209        /// Dismisses the popover, if presented.
210        ///
211        /// Parameter `completion`: Called when the popover dismissal finishes.
212        #[unsafe(method(dismissPopover:))]
213        #[unsafe(method_family = none)]
214        pub unsafe fn dismissPopover(&self, completion: Option<&block2::DynBlock<dyn Fn()>>);
215
216        /// sets the title of the manage participants button in the collaboration popover to the given string, defaults to "Manage Share"
217        #[unsafe(method(manageButtonTitle))]
218        #[unsafe(method_family = none)]
219        pub unsafe fn manageButtonTitle(&self) -> Retained<NSString>;
220
221        /// Setter for [`manageButtonTitle`][Self::manageButtonTitle].
222        #[unsafe(method(setManageButtonTitle:))]
223        #[unsafe(method_family = none)]
224        pub unsafe fn setManageButtonTitle(&self, manage_button_title: &NSString);
225
226        /// whether the collaboration popover should show the default manage participants button in the popover, defaults to YES
227        ///
228        /// Parameter `showManageButton`: whether the button should be hidden
229        #[unsafe(method(setShowManageButton:))]
230        #[unsafe(method_family = none)]
231        pub unsafe fn setShowManageButton(&self, show_manage_button: bool);
232    );
233}
234
235/// Methods declared on superclass `NSView`.
236#[cfg(feature = "objc2-app-kit")]
237#[cfg(target_os = "macos")]
238impl SWCollaborationView {
239    extern_methods!(
240        #[unsafe(method(initWithFrame:))]
241        #[unsafe(method_family = init)]
242        pub unsafe fn initWithFrame(this: Allocated<Self>, frame_rect: NSRect) -> Retained<Self>;
243
244        #[unsafe(method(initWithCoder:))]
245        #[unsafe(method_family = init)]
246        pub unsafe fn initWithCoder(
247            this: Allocated<Self>,
248            coder: &NSCoder,
249        ) -> Option<Retained<Self>>;
250    );
251}
252
253/// Methods declared on superclass `NSResponder`.
254#[cfg(feature = "objc2-app-kit")]
255#[cfg(target_os = "macos")]
256impl SWCollaborationView {
257    extern_methods!(
258        #[unsafe(method(init))]
259        #[unsafe(method_family = init)]
260        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
261    );
262}
263
264/// Methods declared on superclass `NSObject`.
265#[cfg(feature = "objc2-app-kit")]
266#[cfg(target_os = "macos")]
267impl SWCollaborationView {
268    extern_methods!(
269        #[unsafe(method(new))]
270        #[unsafe(method_family = new)]
271        pub unsafe fn new(mtm: MainThreadMarker) -> Retained<Self>;
272    );
273}