objc2_sprite_kit/generated/
SKTransition.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::*;
9#[cfg(feature = "objc2-core-image")]
10#[cfg(not(target_os = "watchos"))]
11use objc2_core_image::*;
12use objc2_foundation::*;
13
14use crate::*;
15
16/// [Apple's documentation](https://developer.apple.com/documentation/spritekit/sktransitiondirection?language=objc)
17// NS_ENUM
18#[repr(transparent)]
19#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
20pub struct SKTransitionDirection(pub NSInteger);
21impl SKTransitionDirection {
22    #[doc(alias = "SKTransitionDirectionUp")]
23    pub const Up: Self = Self(0);
24    #[doc(alias = "SKTransitionDirectionDown")]
25    pub const Down: Self = Self(1);
26    #[doc(alias = "SKTransitionDirectionRight")]
27    pub const Right: Self = Self(2);
28    #[doc(alias = "SKTransitionDirectionLeft")]
29    pub const Left: Self = Self(3);
30}
31
32unsafe impl Encode for SKTransitionDirection {
33    const ENCODING: Encoding = NSInteger::ENCODING;
34}
35
36unsafe impl RefEncode for SKTransitionDirection {
37    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
38}
39
40extern_class!(
41    /// A transition style from one scene to another.
42    ///
43    /// See also [Apple's documentation](https://developer.apple.com/documentation/spritekit/sktransition?language=objc)
44    #[unsafe(super(NSObject))]
45    #[derive(Debug, PartialEq, Eq, Hash)]
46    pub struct SKTransition;
47);
48
49extern_conformance!(
50    unsafe impl NSCopying for SKTransition {}
51);
52
53unsafe impl CopyingHelper for SKTransition {
54    type Result = Self;
55}
56
57extern_conformance!(
58    unsafe impl NSObjectProtocol for SKTransition {}
59);
60
61impl SKTransition {
62    extern_methods!(
63        #[unsafe(method(crossFadeWithDuration:))]
64        #[unsafe(method_family = none)]
65        pub unsafe fn crossFadeWithDuration(sec: NSTimeInterval) -> Retained<SKTransition>;
66
67        #[unsafe(method(fadeWithDuration:))]
68        #[unsafe(method_family = none)]
69        pub unsafe fn fadeWithDuration(sec: NSTimeInterval) -> Retained<SKTransition>;
70
71        #[cfg(feature = "objc2-app-kit")]
72        #[cfg(target_os = "macos")]
73        #[unsafe(method(fadeWithColor:duration:))]
74        #[unsafe(method_family = none)]
75        pub unsafe fn fadeWithColor_duration(
76            color: &NSColor,
77            sec: NSTimeInterval,
78        ) -> Retained<SKTransition>;
79
80        #[unsafe(method(flipHorizontalWithDuration:))]
81        #[unsafe(method_family = none)]
82        pub unsafe fn flipHorizontalWithDuration(sec: NSTimeInterval) -> Retained<SKTransition>;
83
84        #[unsafe(method(flipVerticalWithDuration:))]
85        #[unsafe(method_family = none)]
86        pub unsafe fn flipVerticalWithDuration(sec: NSTimeInterval) -> Retained<SKTransition>;
87
88        #[unsafe(method(revealWithDirection:duration:))]
89        #[unsafe(method_family = none)]
90        pub unsafe fn revealWithDirection_duration(
91            direction: SKTransitionDirection,
92            sec: NSTimeInterval,
93        ) -> Retained<SKTransition>;
94
95        #[unsafe(method(moveInWithDirection:duration:))]
96        #[unsafe(method_family = none)]
97        pub unsafe fn moveInWithDirection_duration(
98            direction: SKTransitionDirection,
99            sec: NSTimeInterval,
100        ) -> Retained<SKTransition>;
101
102        #[unsafe(method(pushWithDirection:duration:))]
103        #[unsafe(method_family = none)]
104        pub unsafe fn pushWithDirection_duration(
105            direction: SKTransitionDirection,
106            sec: NSTimeInterval,
107        ) -> Retained<SKTransition>;
108
109        #[unsafe(method(doorsOpenHorizontalWithDuration:))]
110        #[unsafe(method_family = none)]
111        pub unsafe fn doorsOpenHorizontalWithDuration(
112            sec: NSTimeInterval,
113        ) -> Retained<SKTransition>;
114
115        #[unsafe(method(doorsOpenVerticalWithDuration:))]
116        #[unsafe(method_family = none)]
117        pub unsafe fn doorsOpenVerticalWithDuration(sec: NSTimeInterval) -> Retained<SKTransition>;
118
119        #[unsafe(method(doorsCloseHorizontalWithDuration:))]
120        #[unsafe(method_family = none)]
121        pub unsafe fn doorsCloseHorizontalWithDuration(
122            sec: NSTimeInterval,
123        ) -> Retained<SKTransition>;
124
125        #[unsafe(method(doorsCloseVerticalWithDuration:))]
126        #[unsafe(method_family = none)]
127        pub unsafe fn doorsCloseVerticalWithDuration(sec: NSTimeInterval)
128            -> Retained<SKTransition>;
129
130        #[unsafe(method(doorwayWithDuration:))]
131        #[unsafe(method_family = none)]
132        pub unsafe fn doorwayWithDuration(sec: NSTimeInterval) -> Retained<SKTransition>;
133
134        #[cfg(feature = "objc2-core-image")]
135        #[cfg(not(target_os = "watchos"))]
136        #[unsafe(method(transitionWithCIFilter:duration:))]
137        #[unsafe(method_family = none)]
138        pub unsafe fn transitionWithCIFilter_duration(
139            filter: &CIFilter,
140            sec: NSTimeInterval,
141        ) -> Retained<SKTransition>;
142
143        /// Pause the incoming Scene during the transition, defaults to YES.
144        #[unsafe(method(pausesIncomingScene))]
145        #[unsafe(method_family = none)]
146        pub unsafe fn pausesIncomingScene(&self) -> bool;
147
148        /// Setter for [`pausesIncomingScene`][Self::pausesIncomingScene].
149        #[unsafe(method(setPausesIncomingScene:))]
150        #[unsafe(method_family = none)]
151        pub unsafe fn setPausesIncomingScene(&self, pauses_incoming_scene: bool);
152
153        /// Pause the outgoing Scene during the transition, defaults to YES.
154        #[unsafe(method(pausesOutgoingScene))]
155        #[unsafe(method_family = none)]
156        pub unsafe fn pausesOutgoingScene(&self) -> bool;
157
158        /// Setter for [`pausesOutgoingScene`][Self::pausesOutgoingScene].
159        #[unsafe(method(setPausesOutgoingScene:))]
160        #[unsafe(method_family = none)]
161        pub unsafe fn setPausesOutgoingScene(&self, pauses_outgoing_scene: bool);
162    );
163}
164
165/// Methods declared on superclass `NSObject`.
166impl SKTransition {
167    extern_methods!(
168        #[unsafe(method(init))]
169        #[unsafe(method_family = init)]
170        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
171
172        #[unsafe(method(new))]
173        #[unsafe(method_family = new)]
174        pub unsafe fn new() -> Retained<Self>;
175    );
176}