objc2-web-kit 0.3.1

Bindings to the WebKit framework
Documentation
//! This file has been automatically generated by `objc2`'s `header-translator`.
//! DO NOT EDIT
use core::ffi::*;
use core::ptr::NonNull;
use objc2::__framework_prelude::*;
use objc2_foundation::*;

use crate::*;

extern_class!(
    /// [Apple's documentation](https://developer.apple.com/documentation/webkit/dommouseevent?language=objc)
    #[unsafe(super(DOMUIEvent, DOMEvent, DOMObject, WebScriptObject, NSObject))]
    #[derive(Debug, PartialEq, Eq, Hash)]
    #[cfg(all(
        feature = "DOMEvent",
        feature = "DOMObject",
        feature = "DOMUIEvent",
        feature = "WebScriptObject"
    ))]
    #[deprecated]
    pub struct DOMMouseEvent;
);

#[cfg(all(
    feature = "DOMEvent",
    feature = "DOMObject",
    feature = "DOMUIEvent",
    feature = "WebScriptObject"
))]
extern_conformance!(
    unsafe impl NSCopying for DOMMouseEvent {}
);

#[cfg(all(
    feature = "DOMEvent",
    feature = "DOMObject",
    feature = "DOMUIEvent",
    feature = "WebScriptObject"
))]
unsafe impl CopyingHelper for DOMMouseEvent {
    type Result = Self;
}

#[cfg(all(
    feature = "DOMEvent",
    feature = "DOMObject",
    feature = "DOMUIEvent",
    feature = "WebScriptObject"
))]
extern_conformance!(
    unsafe impl NSObjectProtocol for DOMMouseEvent {}
);

#[cfg(all(
    feature = "DOMEvent",
    feature = "DOMObject",
    feature = "DOMUIEvent",
    feature = "WebScriptObject"
))]
impl DOMMouseEvent {
    extern_methods!(
        #[deprecated]
        #[unsafe(method(screenX))]
        #[unsafe(method_family = none)]
        pub unsafe fn screenX(&self) -> c_int;

        #[deprecated]
        #[unsafe(method(screenY))]
        #[unsafe(method_family = none)]
        pub unsafe fn screenY(&self) -> c_int;

        #[deprecated]
        #[unsafe(method(clientX))]
        #[unsafe(method_family = none)]
        pub unsafe fn clientX(&self) -> c_int;

        #[deprecated]
        #[unsafe(method(clientY))]
        #[unsafe(method_family = none)]
        pub unsafe fn clientY(&self) -> c_int;

        #[deprecated]
        #[unsafe(method(ctrlKey))]
        #[unsafe(method_family = none)]
        pub unsafe fn ctrlKey(&self) -> bool;

        #[deprecated]
        #[unsafe(method(shiftKey))]
        #[unsafe(method_family = none)]
        pub unsafe fn shiftKey(&self) -> bool;

        #[deprecated]
        #[unsafe(method(altKey))]
        #[unsafe(method_family = none)]
        pub unsafe fn altKey(&self) -> bool;

        #[deprecated]
        #[unsafe(method(metaKey))]
        #[unsafe(method_family = none)]
        pub unsafe fn metaKey(&self) -> bool;

        #[deprecated]
        #[unsafe(method(button))]
        #[unsafe(method_family = none)]
        pub unsafe fn button(&self) -> c_short;

        #[cfg(feature = "DOMEventTarget")]
        #[deprecated]
        #[unsafe(method(relatedTarget))]
        #[unsafe(method_family = none)]
        pub unsafe fn relatedTarget(&self) -> Option<Retained<ProtocolObject<dyn DOMEventTarget>>>;

        #[unsafe(method(offsetX))]
        #[unsafe(method_family = none)]
        pub unsafe fn offsetX(&self) -> c_int;

        #[unsafe(method(offsetY))]
        #[unsafe(method_family = none)]
        pub unsafe fn offsetY(&self) -> c_int;

        #[unsafe(method(x))]
        #[unsafe(method_family = none)]
        pub unsafe fn x(&self) -> c_int;

        #[unsafe(method(y))]
        #[unsafe(method_family = none)]
        pub unsafe fn y(&self) -> c_int;

        #[cfg(feature = "DOMNode")]
        #[unsafe(method(fromElement))]
        #[unsafe(method_family = none)]
        pub unsafe fn fromElement(&self) -> Option<Retained<DOMNode>>;

        #[cfg(feature = "DOMNode")]
        #[unsafe(method(toElement))]
        #[unsafe(method_family = none)]
        pub unsafe fn toElement(&self) -> Option<Retained<DOMNode>>;

        #[cfg(all(feature = "DOMAbstractView", feature = "DOMEventTarget"))]
        #[unsafe(method(initMouseEvent:canBubble:cancelable:view:detail:screenX:screenY:clientX:clientY:ctrlKey:altKey:shiftKey:metaKey:button:relatedTarget:))]
        #[unsafe(method_family = none)]
        pub unsafe fn initMouseEvent_canBubble_cancelable_view_detail_screenX_screenY_clientX_clientY_ctrlKey_altKey_shiftKey_metaKey_button_relatedTarget(
            &self,
            r#type: Option<&NSString>,
            can_bubble: bool,
            cancelable: bool,
            view: Option<&DOMAbstractView>,
            detail: c_int,
            screen_x: c_int,
            screen_y: c_int,
            client_x: c_int,
            client_y: c_int,
            ctrl_key: bool,
            alt_key: bool,
            shift_key: bool,
            meta_key: bool,
            button: c_ushort,
            related_target: Option<&ProtocolObject<dyn DOMEventTarget>>,
        );
    );
}

/// Methods declared on superclass `DOMObject`.
#[cfg(all(
    feature = "DOMEvent",
    feature = "DOMObject",
    feature = "DOMUIEvent",
    feature = "WebScriptObject"
))]
impl DOMMouseEvent {
    extern_methods!(
        #[deprecated]
        #[unsafe(method(init))]
        #[unsafe(method_family = init)]
        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
    );
}

/// Methods declared on superclass `NSObject`.
#[cfg(all(
    feature = "DOMEvent",
    feature = "DOMObject",
    feature = "DOMUIEvent",
    feature = "WebScriptObject"
))]
impl DOMMouseEvent {
    extern_methods!(
        #[unsafe(method(new))]
        #[unsafe(method_family = new)]
        pub unsafe fn new() -> Retained<Self>;
    );
}

/// DOMMouseEventDeprecated.
#[cfg(all(
    feature = "DOMEvent",
    feature = "DOMObject",
    feature = "DOMUIEvent",
    feature = "WebScriptObject"
))]
impl DOMMouseEvent {
    extern_methods!(
        #[cfg(all(feature = "DOMAbstractView", feature = "DOMEventTarget"))]
        #[deprecated]
        #[unsafe(method(initMouseEvent:::::::::::::::))]
        #[unsafe(method_family = none)]
        pub unsafe fn initMouseEvent(
            &self,
            r#type: Option<&NSString>,
            can_bubble: bool,
            cancelable: bool,
            view: Option<&DOMAbstractView>,
            detail: c_int,
            screen_x: c_int,
            screen_y: c_int,
            client_x: c_int,
            client_y: c_int,
            ctrl_key: bool,
            alt_key: bool,
            shift_key: bool,
            meta_key: bool,
            button: c_ushort,
            related_target: Option<&ProtocolObject<dyn DOMEventTarget>>,
        );
    );
}