objc2-web-kit 0.3.0

Bindings to the WebKit framework
Documentation
//! This file has been automatically generated by `objc2`'s `header-translator`.
//! DO NOT EDIT
use core::ffi::*;
use objc2::__framework_prelude::*;
#[cfg(feature = "objc2-app-kit")]
#[cfg(target_os = "macos")]
use objc2_app_kit::*;
use objc2_foundation::*;

use crate::*;

/// [Apple's documentation](https://developer.apple.com/documentation/webkit/webviewinsertaction?language=objc)
// NS_ENUM
#[deprecated]
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct WebViewInsertAction(pub NSInteger);
impl WebViewInsertAction {
    #[deprecated]
    #[doc(alias = "WebViewInsertActionTyped")]
    pub const Typed: Self = Self(0);
    #[deprecated]
    #[doc(alias = "WebViewInsertActionPasted")]
    pub const Pasted: Self = Self(1);
    #[deprecated]
    #[doc(alias = "WebViewInsertActionDropped")]
    pub const Dropped: Self = Self(2);
}

unsafe impl Encode for WebViewInsertAction {
    const ENCODING: Encoding = NSInteger::ENCODING;
}

unsafe impl RefEncode for WebViewInsertAction {
    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}

extern_protocol!(
    /// [Apple's documentation](https://developer.apple.com/documentation/webkit/webeditingdelegate?language=objc)
    #[deprecated]
    pub unsafe trait WebEditingDelegate: NSObjectProtocol {
        #[cfg(all(
            feature = "DOMObject",
            feature = "DOMRange",
            feature = "WebScriptObject",
            feature = "WebView",
            feature = "objc2-app-kit"
        ))]
        #[cfg(target_os = "macos")]
        #[deprecated]
        #[optional]
        #[unsafe(method(webView:shouldBeginEditingInDOMRange:))]
        #[unsafe(method_family = none)]
        unsafe fn webView_shouldBeginEditingInDOMRange(
            &self,
            web_view: Option<&WebView>,
            range: Option<&DOMRange>,
        ) -> bool;

        #[cfg(all(
            feature = "DOMObject",
            feature = "DOMRange",
            feature = "WebScriptObject",
            feature = "WebView",
            feature = "objc2-app-kit"
        ))]
        #[cfg(target_os = "macos")]
        #[deprecated]
        #[optional]
        #[unsafe(method(webView:shouldEndEditingInDOMRange:))]
        #[unsafe(method_family = none)]
        unsafe fn webView_shouldEndEditingInDOMRange(
            &self,
            web_view: Option<&WebView>,
            range: Option<&DOMRange>,
        ) -> bool;

        #[cfg(all(
            feature = "DOMNode",
            feature = "DOMObject",
            feature = "DOMRange",
            feature = "WebScriptObject",
            feature = "WebView",
            feature = "objc2-app-kit"
        ))]
        #[cfg(target_os = "macos")]
        #[deprecated]
        #[optional]
        #[unsafe(method(webView:shouldInsertNode:replacingDOMRange:givenAction:))]
        #[unsafe(method_family = none)]
        unsafe fn webView_shouldInsertNode_replacingDOMRange_givenAction(
            &self,
            web_view: Option<&WebView>,
            node: Option<&DOMNode>,
            range: Option<&DOMRange>,
            action: WebViewInsertAction,
        ) -> bool;

        #[cfg(all(
            feature = "DOMObject",
            feature = "DOMRange",
            feature = "WebScriptObject",
            feature = "WebView",
            feature = "objc2-app-kit"
        ))]
        #[cfg(target_os = "macos")]
        #[deprecated]
        #[optional]
        #[unsafe(method(webView:shouldInsertText:replacingDOMRange:givenAction:))]
        #[unsafe(method_family = none)]
        unsafe fn webView_shouldInsertText_replacingDOMRange_givenAction(
            &self,
            web_view: Option<&WebView>,
            text: Option<&NSString>,
            range: Option<&DOMRange>,
            action: WebViewInsertAction,
        ) -> bool;

        #[cfg(all(
            feature = "DOMObject",
            feature = "DOMRange",
            feature = "WebScriptObject",
            feature = "WebView",
            feature = "objc2-app-kit"
        ))]
        #[cfg(target_os = "macos")]
        #[deprecated]
        #[optional]
        #[unsafe(method(webView:shouldDeleteDOMRange:))]
        #[unsafe(method_family = none)]
        unsafe fn webView_shouldDeleteDOMRange(
            &self,
            web_view: Option<&WebView>,
            range: Option<&DOMRange>,
        ) -> bool;

        #[cfg(all(
            feature = "DOMObject",
            feature = "DOMRange",
            feature = "WebScriptObject",
            feature = "WebView",
            feature = "objc2-app-kit"
        ))]
        #[cfg(target_os = "macos")]
        #[deprecated]
        #[optional]
        #[unsafe(method(webView:shouldChangeSelectedDOMRange:toDOMRange:affinity:stillSelecting:))]
        #[unsafe(method_family = none)]
        unsafe fn webView_shouldChangeSelectedDOMRange_toDOMRange_affinity_stillSelecting(
            &self,
            web_view: Option<&WebView>,
            current_range: Option<&DOMRange>,
            proposed_range: Option<&DOMRange>,
            selection_affinity: NSSelectionAffinity,
            flag: bool,
        ) -> bool;

        #[cfg(all(
            feature = "DOMCSSStyleDeclaration",
            feature = "DOMObject",
            feature = "DOMRange",
            feature = "WebScriptObject",
            feature = "WebView",
            feature = "objc2-app-kit"
        ))]
        #[cfg(target_os = "macos")]
        #[deprecated]
        #[optional]
        #[unsafe(method(webView:shouldApplyStyle:toElementsInDOMRange:))]
        #[unsafe(method_family = none)]
        unsafe fn webView_shouldApplyStyle_toElementsInDOMRange(
            &self,
            web_view: Option<&WebView>,
            style: Option<&DOMCSSStyleDeclaration>,
            range: Option<&DOMRange>,
        ) -> bool;

        #[cfg(all(
            feature = "DOMCSSStyleDeclaration",
            feature = "DOMObject",
            feature = "WebScriptObject",
            feature = "WebView",
            feature = "objc2-app-kit"
        ))]
        #[cfg(target_os = "macos")]
        #[deprecated]
        #[optional]
        #[unsafe(method(webView:shouldChangeTypingStyle:toStyle:))]
        #[unsafe(method_family = none)]
        unsafe fn webView_shouldChangeTypingStyle_toStyle(
            &self,
            web_view: Option<&WebView>,
            current_style: Option<&DOMCSSStyleDeclaration>,
            proposed_style: Option<&DOMCSSStyleDeclaration>,
        ) -> bool;

        #[cfg(all(feature = "WebView", feature = "objc2-app-kit"))]
        #[cfg(target_os = "macos")]
        #[deprecated]
        #[optional]
        #[unsafe(method(webView:doCommandBySelector:))]
        #[unsafe(method_family = none)]
        unsafe fn webView_doCommandBySelector(
            &self,
            web_view: Option<&WebView>,
            selector: Option<Sel>,
        ) -> bool;

        #[deprecated]
        #[optional]
        #[unsafe(method(webViewDidBeginEditing:))]
        #[unsafe(method_family = none)]
        unsafe fn webViewDidBeginEditing(&self, notification: Option<&NSNotification>);

        #[deprecated]
        #[optional]
        #[unsafe(method(webViewDidChange:))]
        #[unsafe(method_family = none)]
        unsafe fn webViewDidChange(&self, notification: Option<&NSNotification>);

        #[deprecated]
        #[optional]
        #[unsafe(method(webViewDidEndEditing:))]
        #[unsafe(method_family = none)]
        unsafe fn webViewDidEndEditing(&self, notification: Option<&NSNotification>);

        #[deprecated]
        #[optional]
        #[unsafe(method(webViewDidChangeTypingStyle:))]
        #[unsafe(method_family = none)]
        unsafe fn webViewDidChangeTypingStyle(&self, notification: Option<&NSNotification>);

        #[deprecated]
        #[optional]
        #[unsafe(method(webViewDidChangeSelection:))]
        #[unsafe(method_family = none)]
        unsafe fn webViewDidChangeSelection(&self, notification: Option<&NSNotification>);

        #[cfg(all(feature = "WebView", feature = "objc2-app-kit"))]
        #[cfg(target_os = "macos")]
        #[deprecated]
        #[optional]
        #[unsafe(method(undoManagerForWebView:))]
        #[unsafe(method_family = none)]
        unsafe fn undoManagerForWebView(
            &self,
            web_view: Option<&WebView>,
        ) -> Option<Retained<NSUndoManager>>;
    }
);