objc2_ui_kit/generated/
UIDocumentMenuViewController.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::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uidocumentmenuorder?language=objc)
11// NS_ENUM
12#[deprecated]
13#[repr(transparent)]
14#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
15pub struct UIDocumentMenuOrder(pub NSUInteger);
16impl UIDocumentMenuOrder {
17    #[doc(alias = "UIDocumentMenuOrderFirst")]
18    #[deprecated]
19    pub const First: Self = Self(0);
20    #[doc(alias = "UIDocumentMenuOrderLast")]
21    #[deprecated]
22    pub const Last: Self = Self(1);
23}
24
25unsafe impl Encode for UIDocumentMenuOrder {
26    const ENCODING: Encoding = NSUInteger::ENCODING;
27}
28
29unsafe impl RefEncode for UIDocumentMenuOrder {
30    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
31}
32
33extern_protocol!(
34    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uidocumentmenudelegate?language=objc)
35    #[deprecated = "UIDocumentMenuDelegate is deprecated. Use UIDocumentPickerViewController directly."]
36    pub unsafe trait UIDocumentMenuDelegate: NSObjectProtocol + MainThreadOnly {
37        #[cfg(all(
38            feature = "UIDocumentPickerViewController",
39            feature = "UIResponder",
40            feature = "UIViewController"
41        ))]
42        #[deprecated = "UIDocumentMenuDelegate is deprecated. Use UIDocumentPickerViewController directly."]
43        #[unsafe(method(documentMenu:didPickDocumentPicker:))]
44        #[unsafe(method_family = none)]
45        unsafe fn documentMenu_didPickDocumentPicker(
46            &self,
47            document_menu: &UIDocumentMenuViewController,
48            document_picker: &UIDocumentPickerViewController,
49        );
50
51        #[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
52        #[deprecated = "UIDocumentMenuDelegate is deprecated. Use UIDocumentPickerViewController directly."]
53        #[optional]
54        #[unsafe(method(documentMenuWasCancelled:))]
55        #[unsafe(method_family = none)]
56        unsafe fn documentMenuWasCancelled(&self, document_menu: &UIDocumentMenuViewController);
57    }
58);
59
60extern_class!(
61    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uidocumentmenuviewcontroller?language=objc)
62    #[unsafe(super(UIViewController, UIResponder, NSObject))]
63    #[thread_kind = MainThreadOnly]
64    #[derive(Debug, PartialEq, Eq, Hash)]
65    #[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
66    #[deprecated = "UIDocumentMenuViewController is deprecated. Use UIDocumentPickerViewController directly."]
67    pub struct UIDocumentMenuViewController;
68);
69
70#[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
71extern_conformance!(
72    unsafe impl NSCoding for UIDocumentMenuViewController {}
73);
74
75#[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
76extern_conformance!(
77    unsafe impl NSObjectProtocol for UIDocumentMenuViewController {}
78);
79
80#[cfg(all(
81    feature = "UIAppearance",
82    feature = "UIResponder",
83    feature = "UIViewController"
84))]
85extern_conformance!(
86    unsafe impl UIAppearanceContainer for UIDocumentMenuViewController {}
87);
88
89#[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
90extern_conformance!(
91    unsafe impl UIContentContainer for UIDocumentMenuViewController {}
92);
93
94#[cfg(all(
95    feature = "UIFocus",
96    feature = "UIResponder",
97    feature = "UIViewController"
98))]
99extern_conformance!(
100    unsafe impl UIFocusEnvironment for UIDocumentMenuViewController {}
101);
102
103#[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
104extern_conformance!(
105    unsafe impl UIResponderStandardEditActions for UIDocumentMenuViewController {}
106);
107
108#[cfg(all(
109    feature = "UIResponder",
110    feature = "UITraitCollection",
111    feature = "UIViewController"
112))]
113extern_conformance!(
114    unsafe impl UITraitEnvironment for UIDocumentMenuViewController {}
115);
116
117#[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
118impl UIDocumentMenuViewController {
119    extern_methods!(
120        #[cfg(feature = "UIDocumentPickerViewController")]
121        #[deprecated = "UIDocumentMenuViewController is deprecated. Use UIDocumentPickerViewController directly."]
122        #[unsafe(method(initWithDocumentTypes:inMode:))]
123        #[unsafe(method_family = init)]
124        pub unsafe fn initWithDocumentTypes_inMode(
125            this: Allocated<Self>,
126            allowed_ut_is: &NSArray<NSString>,
127            mode: UIDocumentPickerMode,
128        ) -> Retained<Self>;
129
130        #[cfg(feature = "UIDocumentPickerViewController")]
131        #[deprecated = "UIDocumentMenuViewController is deprecated. Use UIDocumentPickerViewController directly."]
132        #[unsafe(method(initWithURL:inMode:))]
133        #[unsafe(method_family = init)]
134        pub unsafe fn initWithURL_inMode(
135            this: Allocated<Self>,
136            url: &NSURL,
137            mode: UIDocumentPickerMode,
138        ) -> Retained<Self>;
139
140        #[deprecated = "UIDocumentMenuViewController is deprecated. Use UIDocumentPickerViewController directly."]
141        #[unsafe(method(initWithCoder:))]
142        #[unsafe(method_family = init)]
143        pub unsafe fn initWithCoder(
144            this: Allocated<Self>,
145            coder: &NSCoder,
146        ) -> Option<Retained<Self>>;
147
148        #[cfg(all(feature = "UIImage", feature = "block2"))]
149        #[deprecated = "UIDocumentMenuViewController is deprecated. Use UIDocumentPickerViewController directly."]
150        #[unsafe(method(addOptionWithTitle:image:order:handler:))]
151        #[unsafe(method_family = none)]
152        pub unsafe fn addOptionWithTitle_image_order_handler(
153            &self,
154            title: &NSString,
155            image: Option<&UIImage>,
156            order: UIDocumentMenuOrder,
157            handler: &block2::DynBlock<dyn Fn()>,
158        );
159
160        #[deprecated = "UIDocumentMenuViewController is deprecated. Use UIDocumentPickerViewController directly."]
161        #[unsafe(method(delegate))]
162        #[unsafe(method_family = none)]
163        pub unsafe fn delegate(
164            &self,
165        ) -> Option<Retained<ProtocolObject<dyn UIDocumentMenuDelegate>>>;
166
167        /// This is a [weak property][objc2::topics::weak_property].
168        /// Setter for [`delegate`][Self::delegate].
169        #[deprecated = "UIDocumentMenuViewController is deprecated. Use UIDocumentPickerViewController directly."]
170        #[unsafe(method(setDelegate:))]
171        #[unsafe(method_family = none)]
172        pub unsafe fn setDelegate(
173            &self,
174            delegate: Option<&ProtocolObject<dyn UIDocumentMenuDelegate>>,
175        );
176    );
177}
178
179/// Methods declared on superclass `UIViewController`.
180#[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
181impl UIDocumentMenuViewController {
182    extern_methods!(
183        #[unsafe(method(initWithNibName:bundle:))]
184        #[unsafe(method_family = init)]
185        pub unsafe fn initWithNibName_bundle(
186            this: Allocated<Self>,
187            nib_name_or_nil: Option<&NSString>,
188            nib_bundle_or_nil: Option<&NSBundle>,
189        ) -> Retained<Self>;
190    );
191}
192
193/// Methods declared on superclass `NSObject`.
194#[cfg(all(feature = "UIResponder", feature = "UIViewController"))]
195impl UIDocumentMenuViewController {
196    extern_methods!(
197        #[unsafe(method(init))]
198        #[unsafe(method_family = init)]
199        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
200
201        #[unsafe(method(new))]
202        #[unsafe(method_family = new)]
203        pub unsafe fn new(mtm: MainThreadMarker) -> Retained<Self>;
204    );
205}