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/domhtmlselectelement?language=objc)
    #[unsafe(super(
        DOMHTMLElement,
        DOMElement,
        DOMNode,
        DOMObject,
        WebScriptObject,
        NSObject
    ))]
    #[derive(Debug, PartialEq, Eq, Hash)]
    #[cfg(all(
        feature = "DOMElement",
        feature = "DOMHTMLElement",
        feature = "DOMNode",
        feature = "DOMObject",
        feature = "WebScriptObject"
    ))]
    #[deprecated]
    pub struct DOMHTMLSelectElement;
);

#[cfg(all(
    feature = "DOMElement",
    feature = "DOMEventTarget",
    feature = "DOMHTMLElement",
    feature = "DOMNode",
    feature = "DOMObject",
    feature = "WebScriptObject"
))]
extern_conformance!(
    unsafe impl DOMEventTarget for DOMHTMLSelectElement {}
);

#[cfg(all(
    feature = "DOMElement",
    feature = "DOMHTMLElement",
    feature = "DOMNode",
    feature = "DOMObject",
    feature = "WebScriptObject"
))]
extern_conformance!(
    unsafe impl NSCopying for DOMHTMLSelectElement {}
);

#[cfg(all(
    feature = "DOMElement",
    feature = "DOMHTMLElement",
    feature = "DOMNode",
    feature = "DOMObject",
    feature = "WebScriptObject"
))]
unsafe impl CopyingHelper for DOMHTMLSelectElement {
    type Result = Self;
}

#[cfg(all(
    feature = "DOMElement",
    feature = "DOMHTMLElement",
    feature = "DOMNode",
    feature = "DOMObject",
    feature = "WebScriptObject"
))]
extern_conformance!(
    unsafe impl NSObjectProtocol for DOMHTMLSelectElement {}
);

#[cfg(all(
    feature = "DOMElement",
    feature = "DOMHTMLElement",
    feature = "DOMNode",
    feature = "DOMObject",
    feature = "WebScriptObject"
))]
impl DOMHTMLSelectElement {
    extern_methods!(
        #[unsafe(method(autofocus))]
        #[unsafe(method_family = none)]
        pub unsafe fn autofocus(&self) -> bool;

        /// Setter for [`autofocus`][Self::autofocus].
        #[unsafe(method(setAutofocus:))]
        #[unsafe(method_family = none)]
        pub unsafe fn setAutofocus(&self, autofocus: bool);

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

        /// Setter for [`disabled`][Self::disabled].
        #[deprecated]
        #[unsafe(method(setDisabled:))]
        #[unsafe(method_family = none)]
        pub unsafe fn setDisabled(&self, disabled: bool);

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

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

        /// Setter for [`multiple`][Self::multiple].
        #[deprecated]
        #[unsafe(method(setMultiple:))]
        #[unsafe(method_family = none)]
        pub unsafe fn setMultiple(&self, multiple: bool);

        #[deprecated]
        #[unsafe(method(name))]
        #[unsafe(method_family = none)]
        pub unsafe fn name(&self) -> Retained<NSString>;

        /// Setter for [`name`][Self::name].
        #[deprecated]
        #[unsafe(method(setName:))]
        #[unsafe(method_family = none)]
        pub unsafe fn setName(&self, name: Option<&NSString>);

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

        /// Setter for [`size`][Self::size].
        #[deprecated]
        #[unsafe(method(setSize:))]
        #[unsafe(method_family = none)]
        pub unsafe fn setSize(&self, size: c_int);

        #[deprecated]
        #[unsafe(method(type))]
        #[unsafe(method_family = none)]
        pub unsafe fn r#type(&self) -> Retained<NSString>;

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

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

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

        /// Setter for [`selectedIndex`][Self::selectedIndex].
        #[deprecated]
        #[unsafe(method(setSelectedIndex:))]
        #[unsafe(method_family = none)]
        pub unsafe fn setSelectedIndex(&self, selected_index: c_int);

        #[deprecated]
        #[unsafe(method(value))]
        #[unsafe(method_family = none)]
        pub unsafe fn value(&self) -> Retained<NSString>;

        /// Setter for [`value`][Self::value].
        #[deprecated]
        #[unsafe(method(setValue:))]
        #[unsafe(method_family = none)]
        pub unsafe fn setValue(&self, value: Option<&NSString>);

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

        #[unsafe(method(item:))]
        #[unsafe(method_family = none)]
        pub unsafe fn item(&self, index: c_uint) -> Option<Retained<DOMNode>>;

        #[unsafe(method(namedItem:))]
        #[unsafe(method_family = none)]
        pub unsafe fn namedItem(&self, name: Option<&NSString>) -> Option<Retained<DOMNode>>;

        #[unsafe(method(add:before:))]
        #[unsafe(method_family = none)]
        pub unsafe fn add_before(
            &self,
            element: Option<&DOMHTMLElement>,
            before: Option<&DOMHTMLElement>,
        );

        #[deprecated]
        #[unsafe(method(remove:))]
        #[unsafe(method_family = none)]
        pub unsafe fn remove(&self, index: c_int);
    );
}

/// Methods declared on superclass `DOMObject`.
#[cfg(all(
    feature = "DOMElement",
    feature = "DOMHTMLElement",
    feature = "DOMNode",
    feature = "DOMObject",
    feature = "WebScriptObject"
))]
impl DOMHTMLSelectElement {
    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 = "DOMElement",
    feature = "DOMHTMLElement",
    feature = "DOMNode",
    feature = "DOMObject",
    feature = "WebScriptObject"
))]
impl DOMHTMLSelectElement {
    extern_methods!(
        #[unsafe(method(new))]
        #[unsafe(method_family = new)]
        pub unsafe fn new() -> Retained<Self>;
    );
}

/// DOMHTMLSelectElementDeprecated.
#[cfg(all(
    feature = "DOMElement",
    feature = "DOMHTMLElement",
    feature = "DOMNode",
    feature = "DOMObject",
    feature = "WebScriptObject"
))]
impl DOMHTMLSelectElement {
    extern_methods!(
        #[deprecated]
        #[unsafe(method(add::))]
        #[unsafe(method_family = none)]
        pub unsafe fn add(&self, element: Option<&DOMHTMLElement>, before: Option<&DOMHTMLElement>);
    );
}