objc2_car_play/generated/
CPSessionConfiguration.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6
7use crate::*;
8
9#[repr(transparent)]
12#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
13pub struct CPLimitableUserInterface(pub NSUInteger);
14bitflags::bitflags! {
15 impl CPLimitableUserInterface: NSUInteger {
16 #[doc(alias = "CPLimitableUserInterfaceKeyboard")]
17 const Keyboard = 1<<0;
18 #[doc(alias = "CPLimitableUserInterfaceLists")]
19 const Lists = 1<<1;
20 }
21}
22
23unsafe impl Encode for CPLimitableUserInterface {
24 const ENCODING: Encoding = NSUInteger::ENCODING;
25}
26
27unsafe impl RefEncode for CPLimitableUserInterface {
28 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
29}
30
31#[repr(transparent)]
34#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
35pub struct CPContentStyle(pub NSUInteger);
36bitflags::bitflags! {
37 impl CPContentStyle: NSUInteger {
38 #[doc(alias = "CPContentStyleLight")]
39 const Light = 1<<0;
40 #[doc(alias = "CPContentStyleDark")]
41 const Dark = 1<<1;
42 }
43}
44
45unsafe impl Encode for CPContentStyle {
46 const ENCODING: Encoding = NSUInteger::ENCODING;
47}
48
49unsafe impl RefEncode for CPContentStyle {
50 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
51}
52
53extern_class!(
54 #[unsafe(super(NSObject))]
56 #[derive(Debug, PartialEq, Eq, Hash)]
57 pub struct CPSessionConfiguration;
58);
59
60extern_conformance!(
61 unsafe impl NSObjectProtocol for CPSessionConfiguration {}
62);
63
64impl CPSessionConfiguration {
65 extern_methods!(
66 #[unsafe(method(initWithDelegate:))]
67 #[unsafe(method_family = init)]
68 pub unsafe fn initWithDelegate(
69 this: Allocated<Self>,
70 delegate: &ProtocolObject<dyn CPSessionConfigurationDelegate>,
71 ) -> Retained<Self>;
72
73 #[unsafe(method(init))]
74 #[unsafe(method_family = init)]
75 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
76
77 #[unsafe(method(new))]
78 #[unsafe(method_family = new)]
79 pub unsafe fn new() -> Retained<Self>;
80
81 #[unsafe(method(limitedUserInterfaces))]
82 #[unsafe(method_family = none)]
83 pub unsafe fn limitedUserInterfaces(&self) -> CPLimitableUserInterface;
84
85 #[unsafe(method(contentStyle))]
86 #[unsafe(method_family = none)]
87 pub unsafe fn contentStyle(&self) -> CPContentStyle;
88
89 #[unsafe(method(delegate))]
90 #[unsafe(method_family = none)]
91 pub unsafe fn delegate(
92 &self,
93 mtm: MainThreadMarker,
94 ) -> Option<Retained<ProtocolObject<dyn CPSessionConfigurationDelegate>>>;
95
96 #[unsafe(method(setDelegate:))]
100 #[unsafe(method_family = none)]
101 pub unsafe fn setDelegate(
102 &self,
103 delegate: Option<&ProtocolObject<dyn CPSessionConfigurationDelegate>>,
104 );
105 );
106}
107
108extern_protocol!(
109 pub unsafe trait CPSessionConfigurationDelegate:
111 NSObjectProtocol + MainThreadOnly
112 {
113 #[optional]
114 #[unsafe(method(sessionConfiguration:limitedUserInterfacesChanged:))]
115 #[unsafe(method_family = none)]
116 unsafe fn sessionConfiguration_limitedUserInterfacesChanged(
117 &self,
118 session_configuration: &CPSessionConfiguration,
119 limited_user_interfaces: CPLimitableUserInterface,
120 );
121
122 #[optional]
123 #[unsafe(method(sessionConfiguration:contentStyleChanged:))]
124 #[unsafe(method_family = none)]
125 unsafe fn sessionConfiguration_contentStyleChanged(
126 &self,
127 session_configuration: &CPSessionConfiguration,
128 content_style: CPContentStyle,
129 );
130 }
131);