objc2_virtualization/generated/
VZMacKeyboardConfiguration.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ptr::NonNull;
4use objc2::__framework_prelude::*;
5use objc2_foundation::*;
6
7use crate::*;
8
9extern_class!(
10    /// Configuration for a Mac keyboard.
11    ///
12    /// This device can be used by VZVirtualMachineView to send keyboard events to the virtual machine.
13    /// This keyboard supports Apple-specific features such as the globe key.
14    /// Note: this device is only recognized by virtual machines running macOS 13.0 and later. In order to support both macOS 13.0 and earlier
15    /// guests, VZVirtualMachineConfiguration.keyboards can be set to an array containing both a VZMacKeyboardConfiguration and
16    /// a VZUSBKeyboardConfiguration object. macOS 13.0 and later guests will use the Mac keyboard device,
17    /// while earlier versions of macOS will use the USB keyboard device.
18    ///
19    /// See also [Apple's documentation](https://developer.apple.com/documentation/virtualization/vzmackeyboardconfiguration?language=objc)
20    #[unsafe(super(VZKeyboardConfiguration, NSObject))]
21    #[derive(Debug, PartialEq, Eq, Hash)]
22    #[cfg(feature = "VZKeyboardConfiguration")]
23    pub struct VZMacKeyboardConfiguration;
24);
25
26#[cfg(feature = "VZKeyboardConfiguration")]
27extern_conformance!(
28    unsafe impl NSCopying for VZMacKeyboardConfiguration {}
29);
30
31#[cfg(feature = "VZKeyboardConfiguration")]
32unsafe impl CopyingHelper for VZMacKeyboardConfiguration {
33    type Result = Self;
34}
35
36#[cfg(feature = "VZKeyboardConfiguration")]
37extern_conformance!(
38    unsafe impl NSObjectProtocol for VZMacKeyboardConfiguration {}
39);
40
41#[cfg(feature = "VZKeyboardConfiguration")]
42impl VZMacKeyboardConfiguration {
43    extern_methods!(
44        #[unsafe(method(init))]
45        #[unsafe(method_family = init)]
46        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
47    );
48}
49
50/// Methods declared on superclass `VZKeyboardConfiguration`.
51#[cfg(feature = "VZKeyboardConfiguration")]
52impl VZMacKeyboardConfiguration {
53    extern_methods!(
54        #[unsafe(method(new))]
55        #[unsafe(method_family = new)]
56        pub unsafe fn new() -> Retained<Self>;
57    );
58}