objc2_ui_kit/generated/
UIDocumentBrowserAction.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 UIDocumentBrowserActionAvailability(pub NSInteger);
15bitflags::bitflags! {
16 impl UIDocumentBrowserActionAvailability: NSInteger {
17 #[doc(alias = "UIDocumentBrowserActionAvailabilityMenu")]
18 const Menu = 1;
19 #[doc(alias = "UIDocumentBrowserActionAvailabilityNavigationBar")]
20 const NavigationBar = 1<<1;
21 }
22}
23
24unsafe impl Encode for UIDocumentBrowserActionAvailability {
25 const ENCODING: Encoding = NSInteger::ENCODING;
26}
27
28unsafe impl RefEncode for UIDocumentBrowserActionAvailability {
29 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
30}
31
32extern_class!(
33 #[unsafe(super(NSObject))]
37 #[derive(Debug, PartialEq, Eq, Hash)]
38 pub struct UIDocumentBrowserAction;
39);
40
41unsafe impl NSObjectProtocol for UIDocumentBrowserAction {}
42
43impl UIDocumentBrowserAction {
44 extern_methods!(
45 #[unsafe(method(init))]
46 #[unsafe(method_family = init)]
47 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
48
49 #[cfg(feature = "block2")]
50 #[unsafe(method(initWithIdentifier:localizedTitle:availability:handler:))]
51 #[unsafe(method_family = init)]
52 pub unsafe fn initWithIdentifier_localizedTitle_availability_handler(
53 this: Allocated<Self>,
54 identifier: &NSString,
55 localized_title: &NSString,
56 availability: UIDocumentBrowserActionAvailability,
57 handler: &block2::Block<dyn Fn(NonNull<NSArray<NSURL>>)>,
58 ) -> Retained<Self>;
59
60 #[unsafe(method(identifier))]
61 #[unsafe(method_family = none)]
62 pub unsafe fn identifier(&self) -> Retained<NSString>;
63
64 #[unsafe(method(localizedTitle))]
65 #[unsafe(method_family = none)]
66 pub unsafe fn localizedTitle(&self) -> Retained<NSString>;
67
68 #[unsafe(method(availability))]
69 #[unsafe(method_family = none)]
70 pub unsafe fn availability(&self) -> UIDocumentBrowserActionAvailability;
71
72 #[cfg(feature = "UIImage")]
73 #[unsafe(method(image))]
74 #[unsafe(method_family = none)]
75 pub unsafe fn image(&self) -> Option<Retained<UIImage>>;
76
77 #[cfg(feature = "UIImage")]
78 #[unsafe(method(setImage:))]
80 #[unsafe(method_family = none)]
81 pub unsafe fn setImage(&self, image: Option<&UIImage>);
82
83 #[unsafe(method(supportedContentTypes))]
85 #[unsafe(method_family = none)]
86 pub unsafe fn supportedContentTypes(&self) -> Retained<NSArray<NSString>>;
87
88 #[unsafe(method(setSupportedContentTypes:))]
90 #[unsafe(method_family = none)]
91 pub unsafe fn setSupportedContentTypes(&self, supported_content_types: &NSArray<NSString>);
92
93 #[unsafe(method(supportsMultipleItems))]
95 #[unsafe(method_family = none)]
96 pub unsafe fn supportsMultipleItems(&self) -> bool;
97
98 #[unsafe(method(setSupportsMultipleItems:))]
100 #[unsafe(method_family = none)]
101 pub unsafe fn setSupportsMultipleItems(&self, supports_multiple_items: bool);
102 );
103}
104
105impl UIDocumentBrowserAction {
107 extern_methods!(
108 #[unsafe(method(new))]
109 #[unsafe(method_family = new)]
110 pub unsafe fn new() -> Retained<Self>;
111 );
112}