1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6#[cfg(feature = "objc2-core-foundation")]
7use objc2_core_foundation::*;
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 CPPanDirection(pub NSInteger);
19bitflags::bitflags! {
20 impl CPPanDirection: NSInteger {
21 #[doc(alias = "CPPanDirectionNone")]
22 const None = 0;
23 #[doc(alias = "CPPanDirectionLeft")]
24 const Left = 1<<0;
25 #[doc(alias = "CPPanDirectionRight")]
26 const Right = 1<<1;
27 #[doc(alias = "CPPanDirectionUp")]
28 const Up = 1<<2;
29 #[doc(alias = "CPPanDirectionDown")]
30 const Down = 1<<3;
31 }
32}
33
34unsafe impl Encode for CPPanDirection {
35 const ENCODING: Encoding = NSInteger::ENCODING;
36}
37
38unsafe impl RefEncode for CPPanDirection {
39 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
40}
41
42#[repr(transparent)]
45#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
46pub struct CPManeuverDisplayStyle(pub NSInteger);
47bitflags::bitflags! {
48 impl CPManeuverDisplayStyle: NSInteger {
49 #[doc(alias = "CPManeuverDisplayStyleDefault")]
50 const Default = 0;
51 #[doc(alias = "CPManeuverDisplayStyleLeadingSymbol")]
52 const LeadingSymbol = 1;
53 #[doc(alias = "CPManeuverDisplayStyleTrailingSymbol")]
54 const TrailingSymbol = 2;
55 #[doc(alias = "CPManeuverDisplayStyleSymbolOnly")]
56 const SymbolOnly = 3;
57 #[doc(alias = "CPManeuverDisplayStyleInstructionOnly")]
58 const InstructionOnly = 4;
59 }
60}
61
62unsafe impl Encode for CPManeuverDisplayStyle {
63 const ENCODING: Encoding = NSInteger::ENCODING;
64}
65
66unsafe impl RefEncode for CPManeuverDisplayStyle {
67 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
68}
69
70#[repr(transparent)]
73#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
74pub struct CPTimeRemainingColor(pub NSUInteger);
75impl CPTimeRemainingColor {
76 #[doc(alias = "CPTimeRemainingColorDefault")]
77 pub const Default: Self = Self(0);
78 #[doc(alias = "CPTimeRemainingColorGreen")]
79 pub const Green: Self = Self(1);
80 #[doc(alias = "CPTimeRemainingColorOrange")]
81 pub const Orange: Self = Self(2);
82 #[doc(alias = "CPTimeRemainingColorRed")]
83 pub const Red: Self = Self(3);
84}
85
86unsafe impl Encode for CPTimeRemainingColor {
87 const ENCODING: Encoding = NSUInteger::ENCODING;
88}
89
90unsafe impl RefEncode for CPTimeRemainingColor {
91 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
92}
93
94#[repr(transparent)]
97#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
98pub struct CPTripEstimateStyle(pub NSUInteger);
99impl CPTripEstimateStyle {
100 #[doc(alias = "CPTripEstimateStyleLight")]
101 pub const Light: Self = Self(0);
102 #[doc(alias = "CPTripEstimateStyleDark")]
103 pub const Dark: Self = Self(1);
104}
105
106unsafe impl Encode for CPTripEstimateStyle {
107 const ENCODING: Encoding = NSUInteger::ENCODING;
108}
109
110unsafe impl RefEncode for CPTripEstimateStyle {
111 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
112}
113
114extern_class!(
115 #[unsafe(super(CPTemplate, NSObject))]
117 #[thread_kind = MainThreadOnly]
118 #[derive(Debug, PartialEq, Eq, Hash)]
119 #[cfg(feature = "CPTemplate")]
120 pub struct CPMapTemplate;
121);
122
123#[cfg(all(feature = "CPBarButtonProviding", feature = "CPTemplate"))]
124extern_conformance!(
125 unsafe impl CPBarButtonProviding for CPMapTemplate {}
126);
127
128#[cfg(feature = "CPTemplate")]
129extern_conformance!(
130 unsafe impl NSCoding for CPMapTemplate {}
131);
132
133#[cfg(feature = "CPTemplate")]
134extern_conformance!(
135 unsafe impl NSObjectProtocol for CPMapTemplate {}
136);
137
138#[cfg(feature = "CPTemplate")]
139extern_conformance!(
140 unsafe impl NSSecureCoding for CPMapTemplate {}
141);
142
143#[cfg(feature = "CPTemplate")]
144impl CPMapTemplate {
145 extern_methods!(
146 #[cfg(feature = "objc2-ui-kit")]
147 #[unsafe(method(guidanceBackgroundColor))]
152 #[unsafe(method_family = none)]
153 pub unsafe fn guidanceBackgroundColor(&self) -> Retained<UIColor>;
154
155 #[cfg(feature = "objc2-ui-kit")]
156 #[unsafe(method(setGuidanceBackgroundColor:))]
158 #[unsafe(method_family = none)]
159 pub unsafe fn setGuidanceBackgroundColor(&self, guidance_background_color: &UIColor);
160
161 #[unsafe(method(tripEstimateStyle))]
163 #[unsafe(method_family = none)]
164 pub unsafe fn tripEstimateStyle(&self) -> CPTripEstimateStyle;
165
166 #[unsafe(method(setTripEstimateStyle:))]
168 #[unsafe(method_family = none)]
169 pub unsafe fn setTripEstimateStyle(&self, trip_estimate_style: CPTripEstimateStyle);
170
171 #[cfg(feature = "CPMapButton")]
172 #[unsafe(method(mapButtons))]
177 #[unsafe(method_family = none)]
178 pub unsafe fn mapButtons(&self) -> Retained<NSArray<CPMapButton>>;
179
180 #[cfg(feature = "CPMapButton")]
181 #[unsafe(method(setMapButtons:))]
183 #[unsafe(method_family = none)]
184 pub unsafe fn setMapButtons(&self, map_buttons: &NSArray<CPMapButton>);
185
186 #[cfg(all(feature = "CPTrip", feature = "CPTripPreviewTextConfiguration"))]
187 #[unsafe(method(showTripPreviews:textConfiguration:))]
191 #[unsafe(method_family = none)]
192 pub unsafe fn showTripPreviews_textConfiguration(
193 &self,
194 trip_previews: &NSArray<CPTrip>,
195 text_configuration: Option<&CPTripPreviewTextConfiguration>,
196 );
197
198 #[cfg(all(feature = "CPTrip", feature = "CPTripPreviewTextConfiguration"))]
199 #[unsafe(method(showTripPreviews:selectedTrip:textConfiguration:))]
203 #[unsafe(method_family = none)]
204 pub unsafe fn showTripPreviews_selectedTrip_textConfiguration(
205 &self,
206 trip_previews: &NSArray<CPTrip>,
207 selected_trip: Option<&CPTrip>,
208 text_configuration: Option<&CPTripPreviewTextConfiguration>,
209 );
210
211 #[cfg(all(feature = "CPTrip", feature = "CPTripPreviewTextConfiguration"))]
212 #[unsafe(method(showRouteChoicesPreviewForTrip:textConfiguration:))]
214 #[unsafe(method_family = none)]
215 pub unsafe fn showRouteChoicesPreviewForTrip_textConfiguration(
216 &self,
217 trip_preview: &CPTrip,
218 text_configuration: Option<&CPTripPreviewTextConfiguration>,
219 );
220
221 #[unsafe(method(hideTripPreviews))]
223 #[unsafe(method_family = none)]
224 pub unsafe fn hideTripPreviews(&self);
225
226 #[cfg(all(feature = "CPTravelEstimates", feature = "CPTrip"))]
227 #[unsafe(method(updateTravelEstimates:forTrip:))]
229 #[unsafe(method_family = none)]
230 pub unsafe fn updateTravelEstimates_forTrip(
231 &self,
232 estimates: &CPTravelEstimates,
233 trip: &CPTrip,
234 );
235
236 #[cfg(all(feature = "CPTravelEstimates", feature = "CPTrip"))]
237 #[unsafe(method(updateTravelEstimates:forTrip:withTimeRemainingColor:))]
239 #[unsafe(method_family = none)]
240 pub unsafe fn updateTravelEstimates_forTrip_withTimeRemainingColor(
241 &self,
242 estimates: &CPTravelEstimates,
243 trip: &CPTrip,
244 time_remaining_color: CPTimeRemainingColor,
245 );
246
247 #[cfg(all(feature = "CPNavigationSession", feature = "CPTrip"))]
248 #[unsafe(method(startNavigationSessionForTrip:))]
252 #[unsafe(method_family = none)]
253 pub unsafe fn startNavigationSessionForTrip(
254 &self,
255 trip: &CPTrip,
256 ) -> Retained<CPNavigationSession>;
257
258 #[unsafe(method(automaticallyHidesNavigationBar))]
260 #[unsafe(method_family = none)]
261 pub unsafe fn automaticallyHidesNavigationBar(&self) -> bool;
262
263 #[unsafe(method(setAutomaticallyHidesNavigationBar:))]
265 #[unsafe(method_family = none)]
266 pub unsafe fn setAutomaticallyHidesNavigationBar(
267 &self,
268 automatically_hides_navigation_bar: bool,
269 );
270
271 #[unsafe(method(hidesButtonsWithNavigationBar))]
273 #[unsafe(method_family = none)]
274 pub unsafe fn hidesButtonsWithNavigationBar(&self) -> bool;
275
276 #[unsafe(method(setHidesButtonsWithNavigationBar:))]
278 #[unsafe(method_family = none)]
279 pub unsafe fn setHidesButtonsWithNavigationBar(
280 &self,
281 hides_buttons_with_navigation_bar: bool,
282 );
283
284 #[unsafe(method(mapDelegate))]
285 #[unsafe(method_family = none)]
286 pub unsafe fn mapDelegate(
287 &self,
288 ) -> Option<Retained<ProtocolObject<dyn CPMapTemplateDelegate>>>;
289
290 #[unsafe(method(setMapDelegate:))]
294 #[unsafe(method_family = none)]
295 pub unsafe fn setMapDelegate(
296 &self,
297 map_delegate: Option<&ProtocolObject<dyn CPMapTemplateDelegate>>,
298 );
299
300 #[unsafe(method(showPanningInterfaceAnimated:))]
310 #[unsafe(method_family = none)]
311 pub unsafe fn showPanningInterfaceAnimated(&self, animated: bool);
312
313 #[unsafe(method(dismissPanningInterfaceAnimated:))]
317 #[unsafe(method_family = none)]
318 pub unsafe fn dismissPanningInterfaceAnimated(&self, animated: bool);
319
320 #[unsafe(method(isPanningInterfaceVisible))]
322 #[unsafe(method_family = none)]
323 pub unsafe fn isPanningInterfaceVisible(&self) -> bool;
324
325 #[cfg(feature = "CPNavigationAlert")]
326 #[unsafe(method(currentNavigationAlert))]
328 #[unsafe(method_family = none)]
329 pub unsafe fn currentNavigationAlert(&self) -> Option<Retained<CPNavigationAlert>>;
330
331 #[cfg(feature = "CPNavigationAlert")]
332 #[unsafe(method(presentNavigationAlert:animated:))]
345 #[unsafe(method_family = none)]
346 pub unsafe fn presentNavigationAlert_animated(
347 &self,
348 navigation_alert: &CPNavigationAlert,
349 animated: bool,
350 );
351
352 #[cfg(feature = "block2")]
353 #[unsafe(method(dismissNavigationAlertAnimated:completion:))]
362 #[unsafe(method_family = none)]
363 pub unsafe fn dismissNavigationAlertAnimated_completion(
364 &self,
365 animated: bool,
366 completion: &block2::DynBlock<dyn Fn(Bool)>,
367 );
368 );
369}
370
371#[cfg(feature = "CPTemplate")]
373impl CPMapTemplate {
374 extern_methods!(
375 #[unsafe(method(init))]
376 #[unsafe(method_family = init)]
377 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
378
379 #[unsafe(method(new))]
380 #[unsafe(method_family = new)]
381 pub unsafe fn new(mtm: MainThreadMarker) -> Retained<Self>;
382 );
383}
384
385extern_protocol!(
386 pub unsafe trait CPMapTemplateDelegate: NSObjectProtocol + MainThreadOnly {
388 #[cfg(feature = "CPTemplate")]
389 #[optional]
393 #[unsafe(method(mapTemplateShouldProvideNavigationMetadata:))]
394 #[unsafe(method_family = none)]
395 unsafe fn mapTemplateShouldProvideNavigationMetadata(
396 &self,
397 map_template: &CPMapTemplate,
398 ) -> bool;
399
400 #[cfg(all(feature = "CPManeuver", feature = "CPTemplate"))]
401 #[optional]
405 #[unsafe(method(mapTemplate:shouldShowNotificationForManeuver:))]
406 #[unsafe(method_family = none)]
407 unsafe fn mapTemplate_shouldShowNotificationForManeuver(
408 &self,
409 map_template: &CPMapTemplate,
410 maneuver: &CPManeuver,
411 ) -> bool;
412
413 #[cfg(all(
414 feature = "CPManeuver",
415 feature = "CPTemplate",
416 feature = "CPTravelEstimates"
417 ))]
418 #[optional]
422 #[unsafe(method(mapTemplate:shouldUpdateNotificationForManeuver:withTravelEstimates:))]
423 #[unsafe(method_family = none)]
424 unsafe fn mapTemplate_shouldUpdateNotificationForManeuver_withTravelEstimates(
425 &self,
426 map_template: &CPMapTemplate,
427 maneuver: &CPManeuver,
428 travel_estimates: &CPTravelEstimates,
429 ) -> bool;
430
431 #[cfg(all(feature = "CPNavigationAlert", feature = "CPTemplate"))]
432 #[optional]
436 #[unsafe(method(mapTemplate:shouldShowNotificationForNavigationAlert:))]
437 #[unsafe(method_family = none)]
438 unsafe fn mapTemplate_shouldShowNotificationForNavigationAlert(
439 &self,
440 map_template: &CPMapTemplate,
441 navigation_alert: &CPNavigationAlert,
442 ) -> bool;
443
444 #[cfg(feature = "CPTemplate")]
445 #[optional]
447 #[unsafe(method(mapTemplateDidShowPanningInterface:))]
448 #[unsafe(method_family = none)]
449 unsafe fn mapTemplateDidShowPanningInterface(&self, map_template: &CPMapTemplate);
450
451 #[cfg(feature = "CPTemplate")]
452 #[optional]
454 #[unsafe(method(mapTemplateWillDismissPanningInterface:))]
455 #[unsafe(method_family = none)]
456 unsafe fn mapTemplateWillDismissPanningInterface(&self, map_template: &CPMapTemplate);
457
458 #[cfg(feature = "CPTemplate")]
459 #[optional]
461 #[unsafe(method(mapTemplateDidDismissPanningInterface:))]
462 #[unsafe(method_family = none)]
463 unsafe fn mapTemplateDidDismissPanningInterface(&self, map_template: &CPMapTemplate);
464
465 #[cfg(feature = "CPTemplate")]
466 #[optional]
468 #[unsafe(method(mapTemplate:panBeganWithDirection:))]
469 #[unsafe(method_family = none)]
470 unsafe fn mapTemplate_panBeganWithDirection(
471 &self,
472 map_template: &CPMapTemplate,
473 direction: CPPanDirection,
474 );
475
476 #[cfg(feature = "CPTemplate")]
477 #[optional]
479 #[unsafe(method(mapTemplate:panEndedWithDirection:))]
480 #[unsafe(method_family = none)]
481 unsafe fn mapTemplate_panEndedWithDirection(
482 &self,
483 map_template: &CPMapTemplate,
484 direction: CPPanDirection,
485 );
486
487 #[cfg(feature = "CPTemplate")]
488 #[optional]
490 #[unsafe(method(mapTemplate:panWithDirection:))]
491 #[unsafe(method_family = none)]
492 unsafe fn mapTemplate_panWithDirection(
493 &self,
494 map_template: &CPMapTemplate,
495 direction: CPPanDirection,
496 );
497
498 #[cfg(feature = "CPTemplate")]
499 #[optional]
501 #[unsafe(method(mapTemplateDidBeginPanGesture:))]
502 #[unsafe(method_family = none)]
503 unsafe fn mapTemplateDidBeginPanGesture(&self, map_template: &CPMapTemplate);
504
505 #[cfg(all(feature = "CPTemplate", feature = "objc2-core-foundation"))]
506 #[optional]
508 #[unsafe(method(mapTemplate:didUpdatePanGestureWithTranslation:velocity:))]
509 #[unsafe(method_family = none)]
510 unsafe fn mapTemplate_didUpdatePanGestureWithTranslation_velocity(
511 &self,
512 map_template: &CPMapTemplate,
513 translation: CGPoint,
514 velocity: CGPoint,
515 );
516
517 #[cfg(all(feature = "CPTemplate", feature = "objc2-core-foundation"))]
518 #[optional]
520 #[unsafe(method(mapTemplate:didEndPanGestureWithVelocity:))]
521 #[unsafe(method_family = none)]
522 unsafe fn mapTemplate_didEndPanGestureWithVelocity(
523 &self,
524 map_template: &CPMapTemplate,
525 velocity: CGPoint,
526 );
527
528 #[cfg(feature = "CPTemplate")]
529 #[optional]
534 #[unsafe(method(mapTemplateDidBeginZoomGesture:))]
535 #[unsafe(method_family = none)]
536 unsafe fn mapTemplateDidBeginZoomGesture(&self, map_template: &CPMapTemplate);
537
538 #[cfg(all(feature = "CPTemplate", feature = "objc2-core-foundation"))]
539 #[optional]
547 #[unsafe(method(mapTemplate:didUpdateZoomGestureWithCenter:scale:velocity:))]
548 #[unsafe(method_family = none)]
549 unsafe fn mapTemplate_didUpdateZoomGestureWithCenter_scale_velocity(
550 &self,
551 map_template: &CPMapTemplate,
552 center: CGPoint,
553 scale: CGFloat,
554 velocity: CGFloat,
555 );
556
557 #[cfg(all(feature = "CPTemplate", feature = "objc2-core-foundation"))]
558 #[optional]
564 #[unsafe(method(mapTemplate:didEndZoomGestureWithVelocity:))]
565 #[unsafe(method_family = none)]
566 unsafe fn mapTemplate_didEndZoomGestureWithVelocity(
567 &self,
568 map_template: &CPMapTemplate,
569 velocity: CGFloat,
570 );
571
572 #[cfg(feature = "CPTemplate")]
573 #[optional]
578 #[unsafe(method(mapTemplateDidBeginRotationGesture:))]
579 #[unsafe(method_family = none)]
580 unsafe fn mapTemplateDidBeginRotationGesture(&self, map_template: &CPMapTemplate);
581
582 #[cfg(all(feature = "CPTemplate", feature = "objc2-core-foundation"))]
583 #[optional]
591 #[unsafe(method(mapTemplate:didRotateWithCenter:rotation:velocity:))]
592 #[unsafe(method_family = none)]
593 unsafe fn mapTemplate_didRotateWithCenter_rotation_velocity(
594 &self,
595 map_template: &CPMapTemplate,
596 center: CGPoint,
597 rotation: CGFloat,
598 velocity: CGFloat,
599 );
600
601 #[cfg(all(feature = "CPTemplate", feature = "objc2-core-foundation"))]
602 #[optional]
608 #[unsafe(method(mapTemplate:rotationDidEndWithVelocity:))]
609 #[unsafe(method_family = none)]
610 unsafe fn mapTemplate_rotationDidEndWithVelocity(
611 &self,
612 map_template: &CPMapTemplate,
613 velocity: CGFloat,
614 );
615
616 #[cfg(feature = "CPTemplate")]
617 #[optional]
622 #[unsafe(method(mapTemplateDidBeginPitchGesture:))]
623 #[unsafe(method_family = none)]
624 unsafe fn mapTemplateDidBeginPitchGesture(&self, map_template: &CPMapTemplate);
625
626 #[cfg(all(feature = "CPTemplate", feature = "objc2-core-foundation"))]
627 #[optional]
635 #[unsafe(method(mapTemplate:pitchWithCenter:))]
636 #[unsafe(method_family = none)]
637 unsafe fn mapTemplate_pitchWithCenter(&self, map_template: &CPMapTemplate, center: CGPoint);
638
639 #[cfg(all(feature = "CPTemplate", feature = "objc2-core-foundation"))]
640 #[optional]
646 #[unsafe(method(mapTemplate:pitchEndedWithCenter:))]
647 #[unsafe(method_family = none)]
648 unsafe fn mapTemplate_pitchEndedWithCenter(
649 &self,
650 map_template: &CPMapTemplate,
651 center: CGPoint,
652 );
653
654 #[cfg(all(feature = "CPNavigationAlert", feature = "CPTemplate"))]
655 #[optional]
657 #[unsafe(method(mapTemplate:willShowNavigationAlert:))]
658 #[unsafe(method_family = none)]
659 unsafe fn mapTemplate_willShowNavigationAlert(
660 &self,
661 map_template: &CPMapTemplate,
662 navigation_alert: &CPNavigationAlert,
663 );
664
665 #[cfg(all(feature = "CPNavigationAlert", feature = "CPTemplate"))]
666 #[optional]
670 #[unsafe(method(mapTemplate:didShowNavigationAlert:))]
671 #[unsafe(method_family = none)]
672 unsafe fn mapTemplate_didShowNavigationAlert(
673 &self,
674 map_template: &CPMapTemplate,
675 navigation_alert: &CPNavigationAlert,
676 );
677
678 #[cfg(all(feature = "CPNavigationAlert", feature = "CPTemplate"))]
679 #[optional]
681 #[unsafe(method(mapTemplate:willDismissNavigationAlert:dismissalContext:))]
682 #[unsafe(method_family = none)]
683 unsafe fn mapTemplate_willDismissNavigationAlert_dismissalContext(
684 &self,
685 map_template: &CPMapTemplate,
686 navigation_alert: &CPNavigationAlert,
687 dismissal_context: CPNavigationAlertDismissalContext,
688 );
689
690 #[cfg(all(feature = "CPNavigationAlert", feature = "CPTemplate"))]
691 #[optional]
693 #[unsafe(method(mapTemplate:didDismissNavigationAlert:dismissalContext:))]
694 #[unsafe(method_family = none)]
695 unsafe fn mapTemplate_didDismissNavigationAlert_dismissalContext(
696 &self,
697 map_template: &CPMapTemplate,
698 navigation_alert: &CPNavigationAlert,
699 dismissal_context: CPNavigationAlertDismissalContext,
700 );
701
702 #[cfg(all(feature = "CPTemplate", feature = "CPTrip"))]
703 #[optional]
705 #[unsafe(method(mapTemplate:selectedPreviewForTrip:usingRouteChoice:))]
706 #[unsafe(method_family = none)]
707 unsafe fn mapTemplate_selectedPreviewForTrip_usingRouteChoice(
708 &self,
709 map_template: &CPMapTemplate,
710 trip: &CPTrip,
711 route_choice: &CPRouteChoice,
712 );
713
714 #[cfg(all(feature = "CPTemplate", feature = "CPTrip"))]
715 #[optional]
717 #[unsafe(method(mapTemplate:startedTrip:usingRouteChoice:))]
718 #[unsafe(method_family = none)]
719 unsafe fn mapTemplate_startedTrip_usingRouteChoice(
720 &self,
721 map_template: &CPMapTemplate,
722 trip: &CPTrip,
723 route_choice: &CPRouteChoice,
724 );
725
726 #[cfg(feature = "CPTemplate")]
727 #[optional]
734 #[unsafe(method(mapTemplateDidCancelNavigation:))]
735 #[unsafe(method_family = none)]
736 unsafe fn mapTemplateDidCancelNavigation(&self, map_template: &CPMapTemplate);
737
738 #[cfg(all(feature = "CPManeuver", feature = "CPTemplate"))]
739 #[optional]
743 #[unsafe(method(mapTemplate:displayStyleForManeuver:))]
744 #[unsafe(method_family = none)]
745 unsafe fn mapTemplate_displayStyleForManeuver(
746 &self,
747 map_template: &CPMapTemplate,
748 maneuver: &CPManeuver,
749 ) -> CPManeuverDisplayStyle;
750 }
751);