objc2_game_kit/generated/
GKAchievementViewController.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_class!(
14    /// View controller that provides the standard user interface for achievements. Present modally from the top view controller.
15    ///
16    /// See also [Apple's documentation](https://developer.apple.com/documentation/gamekit/gkachievementviewcontroller?language=objc)
17    #[unsafe(super(GKGameCenterViewController, NSViewController, NSResponder, NSObject))]
18    #[derive(Debug, PartialEq, Eq, Hash)]
19    #[cfg(all(feature = "GKGameCenterViewController", feature = "objc2-app-kit"))]
20    #[cfg(target_os = "macos")]
21    #[deprecated]
22    pub struct GKAchievementViewController;
23);
24
25#[cfg(all(
26    feature = "GKDialogController",
27    feature = "GKGameCenterViewController",
28    feature = "objc2-app-kit"
29))]
30#[cfg(target_os = "macos")]
31extern_conformance!(
32    unsafe impl GKViewController for GKAchievementViewController {}
33);
34
35#[cfg(all(feature = "GKGameCenterViewController", feature = "objc2-app-kit"))]
36#[cfg(target_os = "macos")]
37extern_conformance!(
38    unsafe impl NSCoding for GKAchievementViewController {}
39);
40
41#[cfg(all(feature = "GKGameCenterViewController", feature = "objc2-app-kit"))]
42#[cfg(target_os = "macos")]
43extern_conformance!(
44    unsafe impl NSEditor for GKAchievementViewController {}
45);
46
47#[cfg(all(feature = "GKGameCenterViewController", feature = "objc2-app-kit"))]
48#[cfg(target_os = "macos")]
49extern_conformance!(
50    unsafe impl NSObjectProtocol for GKAchievementViewController {}
51);
52
53#[cfg(all(feature = "GKGameCenterViewController", feature = "objc2-app-kit"))]
54#[cfg(target_os = "macos")]
55extern_conformance!(
56    unsafe impl NSSeguePerforming for GKAchievementViewController {}
57);
58
59#[cfg(all(feature = "GKGameCenterViewController", feature = "objc2-app-kit"))]
60#[cfg(target_os = "macos")]
61extern_conformance!(
62    unsafe impl NSUserInterfaceItemIdentification for GKAchievementViewController {}
63);
64
65#[cfg(all(feature = "GKGameCenterViewController", feature = "objc2-app-kit"))]
66#[cfg(target_os = "macos")]
67impl GKAchievementViewController {
68    extern_methods!(
69        #[deprecated]
70        #[unsafe(method(achievementDelegate))]
71        #[unsafe(method_family = none)]
72        pub unsafe fn achievementDelegate(
73            &self,
74        ) -> Option<Retained<ProtocolObject<dyn GKAchievementViewControllerDelegate>>>;
75
76        /// Setter for [`achievementDelegate`][Self::achievementDelegate].
77        ///
78        /// This is a [weak property][objc2::topics::weak_property].
79        ///
80        /// # Safety
81        ///
82        /// `achievement_delegate` might not allow `None`.
83        #[deprecated]
84        #[unsafe(method(setAchievementDelegate:))]
85        #[unsafe(method_family = none)]
86        pub unsafe fn setAchievementDelegate(
87            &self,
88            achievement_delegate: Option<&ProtocolObject<dyn GKAchievementViewControllerDelegate>>,
89        );
90    );
91}
92
93/// Methods declared on superclass `NSViewController`.
94#[cfg(all(feature = "GKGameCenterViewController", feature = "objc2-app-kit"))]
95#[cfg(target_os = "macos")]
96impl GKAchievementViewController {
97    extern_methods!(
98        #[unsafe(method(initWithNibName:bundle:))]
99        #[unsafe(method_family = init)]
100        pub unsafe fn initWithNibName_bundle(
101            this: Allocated<Self>,
102            nib_name_or_nil: Option<&NSNibName>,
103            nib_bundle_or_nil: Option<&NSBundle>,
104        ) -> Retained<Self>;
105
106        /// # Safety
107        ///
108        /// `coder` possibly has further requirements.
109        #[unsafe(method(initWithCoder:))]
110        #[unsafe(method_family = init)]
111        pub unsafe fn initWithCoder(
112            this: Allocated<Self>,
113            coder: &NSCoder,
114        ) -> Option<Retained<Self>>;
115    );
116}
117
118/// Methods declared on superclass `NSResponder`.
119#[cfg(all(feature = "GKGameCenterViewController", feature = "objc2-app-kit"))]
120#[cfg(target_os = "macos")]
121impl GKAchievementViewController {
122    extern_methods!(
123        #[unsafe(method(init))]
124        #[unsafe(method_family = init)]
125        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
126    );
127}
128
129/// Methods declared on superclass `NSObject`.
130#[cfg(all(feature = "GKGameCenterViewController", feature = "objc2-app-kit"))]
131#[cfg(target_os = "macos")]
132impl GKAchievementViewController {
133    extern_methods!(
134        #[unsafe(method(new))]
135        #[unsafe(method_family = new)]
136        pub unsafe fn new(mtm: MainThreadMarker) -> Retained<Self>;
137    );
138}
139
140extern_protocol!(
141    /// Optional delegate
142    ///
143    /// See also [Apple's documentation](https://developer.apple.com/documentation/gamekit/gkachievementviewcontrollerdelegate?language=objc)
144    #[deprecated]
145    pub unsafe trait GKAchievementViewControllerDelegate: NSObjectProtocol {
146        #[cfg(all(feature = "GKGameCenterViewController", feature = "objc2-app-kit"))]
147        #[cfg(target_os = "macos")]
148        /// The achievement view has finished
149        ///
150        /// # Safety
151        ///
152        /// `view_controller` might not allow `None`.
153        #[deprecated]
154        #[unsafe(method(achievementViewControllerDidFinish:))]
155        #[unsafe(method_family = none)]
156        unsafe fn achievementViewControllerDidFinish(
157            &self,
158            view_controller: Option<&GKAchievementViewController>,
159        );
160    }
161);