objc2_event_kit_ui/generated/
EKCalendarChooser.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6#[cfg(feature = "objc2-event-kit")]
7use objc2_event_kit::*;
8use objc2_foundation::*;
9#[cfg(feature = "objc2-ui-kit")]
10use objc2_ui_kit::*;
11
12use crate::*;
13
14#[repr(transparent)]
17#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
18pub struct EKCalendarChooserSelectionStyle(pub NSInteger);
19impl EKCalendarChooserSelectionStyle {
20 #[doc(alias = "EKCalendarChooserSelectionStyleSingle")]
21 pub const Single: Self = Self(0);
22 #[doc(alias = "EKCalendarChooserSelectionStyleMultiple")]
23 pub const Multiple: Self = Self(1);
24}
25
26unsafe impl Encode for EKCalendarChooserSelectionStyle {
27 const ENCODING: Encoding = NSInteger::ENCODING;
28}
29
30unsafe impl RefEncode for EKCalendarChooserSelectionStyle {
31 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
32}
33
34#[repr(transparent)]
37#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
38pub struct EKCalendarChooserDisplayStyle(pub NSInteger);
39impl EKCalendarChooserDisplayStyle {
40 #[doc(alias = "EKCalendarChooserDisplayAllCalendars")]
41 pub const AllCalendars: Self = Self(0);
42 #[doc(alias = "EKCalendarChooserDisplayWritableCalendarsOnly")]
43 pub const WritableCalendarsOnly: Self = Self(1);
44}
45
46unsafe impl Encode for EKCalendarChooserDisplayStyle {
47 const ENCODING: Encoding = NSInteger::ENCODING;
48}
49
50unsafe impl RefEncode for EKCalendarChooserDisplayStyle {
51 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
52}
53
54extern_class!(
55 #[unsafe(super(UIViewController, UIResponder, NSObject))]
57 #[derive(Debug, PartialEq, Eq, Hash)]
58 #[cfg(feature = "objc2-ui-kit")]
59 pub struct EKCalendarChooser;
60);
61
62#[cfg(feature = "objc2-ui-kit")]
63unsafe impl NSCoding for EKCalendarChooser {}
64
65#[cfg(feature = "objc2-ui-kit")]
66unsafe impl NSObjectProtocol for EKCalendarChooser {}
67
68#[cfg(feature = "objc2-ui-kit")]
69unsafe impl UIAppearanceContainer for EKCalendarChooser {}
70
71#[cfg(feature = "objc2-ui-kit")]
72unsafe impl UIContentContainer for EKCalendarChooser {}
73
74#[cfg(feature = "objc2-ui-kit")]
75unsafe impl UIFocusEnvironment for EKCalendarChooser {}
76
77#[cfg(feature = "objc2-ui-kit")]
78unsafe impl UIResponderStandardEditActions for EKCalendarChooser {}
79
80#[cfg(feature = "objc2-ui-kit")]
81unsafe impl UITraitEnvironment for EKCalendarChooser {}
82
83#[cfg(feature = "objc2-ui-kit")]
84impl EKCalendarChooser {
85 extern_methods!(
86 #[cfg(feature = "objc2-event-kit")]
87 #[unsafe(method(initWithSelectionStyle:displayStyle:eventStore:))]
88 #[unsafe(method_family = init)]
89 pub unsafe fn initWithSelectionStyle_displayStyle_eventStore(
90 this: Allocated<Self>,
91 selection_style: EKCalendarChooserSelectionStyle,
92 display_style: EKCalendarChooserDisplayStyle,
93 event_store: &EKEventStore,
94 ) -> Retained<Self>;
95
96 #[cfg(feature = "objc2-event-kit")]
97 #[unsafe(method(initWithSelectionStyle:displayStyle:entityType:eventStore:))]
98 #[unsafe(method_family = init)]
99 pub unsafe fn initWithSelectionStyle_displayStyle_entityType_eventStore(
100 this: Allocated<Self>,
101 style: EKCalendarChooserSelectionStyle,
102 display_style: EKCalendarChooserDisplayStyle,
103 entity_type: EKEntityType,
104 event_store: &EKEventStore,
105 ) -> Retained<Self>;
106
107 #[unsafe(method(selectionStyle))]
108 #[unsafe(method_family = none)]
109 pub unsafe fn selectionStyle(&self) -> EKCalendarChooserSelectionStyle;
110
111 #[unsafe(method(delegate))]
112 #[unsafe(method_family = none)]
113 pub unsafe fn delegate(
114 &self,
115 ) -> Option<Retained<ProtocolObject<dyn EKCalendarChooserDelegate>>>;
116
117 #[unsafe(method(setDelegate:))]
120 #[unsafe(method_family = none)]
121 pub unsafe fn setDelegate(
122 &self,
123 delegate: Option<&ProtocolObject<dyn EKCalendarChooserDelegate>>,
124 );
125
126 #[unsafe(method(showsDoneButton))]
127 #[unsafe(method_family = none)]
128 pub unsafe fn showsDoneButton(&self) -> bool;
129
130 #[unsafe(method(setShowsDoneButton:))]
132 #[unsafe(method_family = none)]
133 pub unsafe fn setShowsDoneButton(&self, shows_done_button: bool);
134
135 #[unsafe(method(showsCancelButton))]
136 #[unsafe(method_family = none)]
137 pub unsafe fn showsCancelButton(&self) -> bool;
138
139 #[unsafe(method(setShowsCancelButton:))]
141 #[unsafe(method_family = none)]
142 pub unsafe fn setShowsCancelButton(&self, shows_cancel_button: bool);
143
144 #[cfg(feature = "objc2-event-kit")]
145 #[unsafe(method(selectedCalendars))]
146 #[unsafe(method_family = none)]
147 pub unsafe fn selectedCalendars(&self) -> Retained<NSSet<EKCalendar>>;
148
149 #[cfg(feature = "objc2-event-kit")]
150 #[unsafe(method(setSelectedCalendars:))]
152 #[unsafe(method_family = none)]
153 pub unsafe fn setSelectedCalendars(&self, selected_calendars: &NSSet<EKCalendar>);
154 );
155}
156
157#[cfg(feature = "objc2-ui-kit")]
159impl EKCalendarChooser {
160 extern_methods!(
161 #[unsafe(method(initWithNibName:bundle:))]
162 #[unsafe(method_family = init)]
163 pub unsafe fn initWithNibName_bundle(
164 this: Allocated<Self>,
165 nib_name_or_nil: Option<&NSString>,
166 nib_bundle_or_nil: Option<&NSBundle>,
167 ) -> Retained<Self>;
168
169 #[unsafe(method(initWithCoder:))]
170 #[unsafe(method_family = init)]
171 pub unsafe fn initWithCoder(
172 this: Allocated<Self>,
173 coder: &NSCoder,
174 ) -> Option<Retained<Self>>;
175 );
176}
177
178#[cfg(feature = "objc2-ui-kit")]
180impl EKCalendarChooser {
181 extern_methods!(
182 #[unsafe(method(init))]
183 #[unsafe(method_family = init)]
184 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
185
186 #[unsafe(method(new))]
187 #[unsafe(method_family = new)]
188 pub unsafe fn new(mtm: MainThreadMarker) -> Retained<Self>;
189 );
190}
191
192extern_protocol!(
193 pub unsafe trait EKCalendarChooserDelegate: NSObjectProtocol {
195 #[cfg(feature = "objc2-ui-kit")]
196 #[optional]
197 #[unsafe(method(calendarChooserSelectionDidChange:))]
198 #[unsafe(method_family = none)]
199 unsafe fn calendarChooserSelectionDidChange(&self, calendar_chooser: &EKCalendarChooser);
200
201 #[cfg(feature = "objc2-ui-kit")]
202 #[optional]
203 #[unsafe(method(calendarChooserDidFinish:))]
204 #[unsafe(method_family = none)]
205 unsafe fn calendarChooserDidFinish(&self, calendar_chooser: &EKCalendarChooser);
206
207 #[cfg(feature = "objc2-ui-kit")]
208 #[optional]
209 #[unsafe(method(calendarChooserDidCancel:))]
210 #[unsafe(method_family = none)]
211 unsafe fn calendarChooserDidCancel(&self, calendar_chooser: &EKCalendarChooser);
212 }
213);