objc2_app_kit/generated/
NSPageController.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10pub type NSPageControllerObjectIdentifier = NSString;
12
13#[repr(transparent)]
16#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
17pub struct NSPageControllerTransitionStyle(pub NSInteger);
18impl NSPageControllerTransitionStyle {
19 #[doc(alias = "NSPageControllerTransitionStyleStackHistory")]
20 pub const StackHistory: Self = Self(0);
21 #[doc(alias = "NSPageControllerTransitionStyleStackBook")]
22 pub const StackBook: Self = Self(1);
23 #[doc(alias = "NSPageControllerTransitionStyleHorizontalStrip")]
24 pub const HorizontalStrip: Self = Self(2);
25}
26
27unsafe impl Encode for NSPageControllerTransitionStyle {
28 const ENCODING: Encoding = NSInteger::ENCODING;
29}
30
31unsafe impl RefEncode for NSPageControllerTransitionStyle {
32 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
33}
34
35extern_class!(
36 #[unsafe(super(NSViewController, NSResponder, NSObject))]
38 #[derive(Debug, PartialEq, Eq, Hash)]
39 #[cfg(all(feature = "NSResponder", feature = "NSViewController"))]
40 pub struct NSPageController;
41);
42
43#[cfg(all(
44 feature = "NSAnimation",
45 feature = "NSResponder",
46 feature = "NSViewController"
47))]
48unsafe impl NSAnimatablePropertyContainer for NSPageController {}
49
50#[cfg(all(feature = "NSResponder", feature = "NSViewController"))]
51unsafe impl NSCoding for NSPageController {}
52
53#[cfg(all(
54 feature = "NSKeyValueBinding",
55 feature = "NSResponder",
56 feature = "NSViewController"
57))]
58unsafe impl NSEditor for NSPageController {}
59
60#[cfg(all(feature = "NSResponder", feature = "NSViewController"))]
61unsafe impl NSObjectProtocol for NSPageController {}
62
63#[cfg(all(
64 feature = "NSResponder",
65 feature = "NSStoryboardSegue",
66 feature = "NSViewController"
67))]
68unsafe impl NSSeguePerforming for NSPageController {}
69
70#[cfg(all(
71 feature = "NSResponder",
72 feature = "NSUserInterfaceItemIdentification",
73 feature = "NSViewController"
74))]
75unsafe impl NSUserInterfaceItemIdentification for NSPageController {}
76
77#[cfg(all(feature = "NSResponder", feature = "NSViewController"))]
78impl NSPageController {
79 extern_methods!(
80 #[unsafe(method(delegate))]
81 #[unsafe(method_family = none)]
82 pub unsafe fn delegate(
83 &self,
84 ) -> Option<Retained<ProtocolObject<dyn NSPageControllerDelegate>>>;
85
86 #[unsafe(method(setDelegate:))]
89 #[unsafe(method_family = none)]
90 pub unsafe fn setDelegate(
91 &self,
92 delegate: Option<&ProtocolObject<dyn NSPageControllerDelegate>>,
93 );
94
95 #[unsafe(method(selectedViewController))]
96 #[unsafe(method_family = none)]
97 pub unsafe fn selectedViewController(&self) -> Option<Retained<NSViewController>>;
98
99 #[unsafe(method(transitionStyle))]
100 #[unsafe(method_family = none)]
101 pub unsafe fn transitionStyle(&self) -> NSPageControllerTransitionStyle;
102
103 #[unsafe(method(setTransitionStyle:))]
105 #[unsafe(method_family = none)]
106 pub unsafe fn setTransitionStyle(&self, transition_style: NSPageControllerTransitionStyle);
107
108 #[unsafe(method(arrangedObjects))]
109 #[unsafe(method_family = none)]
110 pub unsafe fn arrangedObjects(&self) -> Retained<NSArray>;
111
112 #[unsafe(method(setArrangedObjects:))]
114 #[unsafe(method_family = none)]
115 pub unsafe fn setArrangedObjects(&self, arranged_objects: &NSArray);
116
117 #[unsafe(method(selectedIndex))]
118 #[unsafe(method_family = none)]
119 pub unsafe fn selectedIndex(&self) -> NSInteger;
120
121 #[unsafe(method(setSelectedIndex:))]
123 #[unsafe(method_family = none)]
124 pub unsafe fn setSelectedIndex(&self, selected_index: NSInteger);
125
126 #[unsafe(method(navigateForwardToObject:))]
127 #[unsafe(method_family = none)]
128 pub unsafe fn navigateForwardToObject(&self, object: &AnyObject);
129
130 #[unsafe(method(completeTransition))]
131 #[unsafe(method_family = none)]
132 pub unsafe fn completeTransition(&self);
133
134 #[unsafe(method(navigateBack:))]
135 #[unsafe(method_family = none)]
136 pub unsafe fn navigateBack(&self, sender: Option<&AnyObject>);
137
138 #[unsafe(method(navigateForward:))]
139 #[unsafe(method_family = none)]
140 pub unsafe fn navigateForward(&self, sender: Option<&AnyObject>);
141
142 #[unsafe(method(takeSelectedIndexFrom:))]
143 #[unsafe(method_family = none)]
144 pub unsafe fn takeSelectedIndexFrom(&self, sender: Option<&AnyObject>);
145 );
146}
147
148#[cfg(all(feature = "NSResponder", feature = "NSViewController"))]
150impl NSPageController {
151 extern_methods!(
152 #[cfg(feature = "NSNib")]
153 #[unsafe(method(initWithNibName:bundle:))]
154 #[unsafe(method_family = init)]
155 pub unsafe fn initWithNibName_bundle(
156 this: Allocated<Self>,
157 nib_name_or_nil: Option<&NSNibName>,
158 nib_bundle_or_nil: Option<&NSBundle>,
159 ) -> Retained<Self>;
160
161 #[unsafe(method(initWithCoder:))]
162 #[unsafe(method_family = init)]
163 pub unsafe fn initWithCoder(
164 this: Allocated<Self>,
165 coder: &NSCoder,
166 ) -> Option<Retained<Self>>;
167 );
168}
169
170#[cfg(all(feature = "NSResponder", feature = "NSViewController"))]
172impl NSPageController {
173 extern_methods!(
174 #[unsafe(method(init))]
175 #[unsafe(method_family = init)]
176 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
177 );
178}
179
180#[cfg(all(feature = "NSResponder", feature = "NSViewController"))]
182impl NSPageController {
183 extern_methods!(
184 #[unsafe(method(new))]
185 #[unsafe(method_family = new)]
186 pub unsafe fn new(mtm: MainThreadMarker) -> Retained<Self>;
187 );
188}
189
190extern_protocol!(
191 pub unsafe trait NSPageControllerDelegate: NSObjectProtocol + MainThreadOnly {
193 #[cfg(all(feature = "NSResponder", feature = "NSViewController"))]
194 #[optional]
195 #[unsafe(method(pageController:identifierForObject:))]
196 #[unsafe(method_family = none)]
197 unsafe fn pageController_identifierForObject(
198 &self,
199 page_controller: &NSPageController,
200 object: &AnyObject,
201 ) -> Retained<NSPageControllerObjectIdentifier>;
202
203 #[cfg(all(feature = "NSResponder", feature = "NSViewController"))]
204 #[optional]
205 #[unsafe(method(pageController:viewControllerForIdentifier:))]
206 #[unsafe(method_family = none)]
207 unsafe fn pageController_viewControllerForIdentifier(
208 &self,
209 page_controller: &NSPageController,
210 identifier: &NSPageControllerObjectIdentifier,
211 ) -> Retained<NSViewController>;
212
213 #[cfg(all(feature = "NSResponder", feature = "NSViewController"))]
214 #[optional]
215 #[unsafe(method(pageController:frameForObject:))]
216 #[unsafe(method_family = none)]
217 unsafe fn pageController_frameForObject(
218 &self,
219 page_controller: &NSPageController,
220 object: Option<&AnyObject>,
221 ) -> NSRect;
222
223 #[cfg(all(feature = "NSResponder", feature = "NSViewController"))]
224 #[optional]
225 #[unsafe(method(pageController:prepareViewController:withObject:))]
226 #[unsafe(method_family = none)]
227 unsafe fn pageController_prepareViewController_withObject(
228 &self,
229 page_controller: &NSPageController,
230 view_controller: &NSViewController,
231 object: Option<&AnyObject>,
232 );
233
234 #[cfg(all(feature = "NSResponder", feature = "NSViewController"))]
235 #[optional]
236 #[unsafe(method(pageController:didTransitionToObject:))]
237 #[unsafe(method_family = none)]
238 unsafe fn pageController_didTransitionToObject(
239 &self,
240 page_controller: &NSPageController,
241 object: &AnyObject,
242 );
243
244 #[cfg(all(feature = "NSResponder", feature = "NSViewController"))]
245 #[optional]
246 #[unsafe(method(pageControllerWillStartLiveTransition:))]
247 #[unsafe(method_family = none)]
248 unsafe fn pageControllerWillStartLiveTransition(&self, page_controller: &NSPageController);
249
250 #[cfg(all(feature = "NSResponder", feature = "NSViewController"))]
251 #[optional]
252 #[unsafe(method(pageControllerDidEndLiveTransition:))]
253 #[unsafe(method_family = none)]
254 unsafe fn pageControllerDidEndLiveTransition(&self, page_controller: &NSPageController);
255 }
256);