objc2-app-kit 0.2.2

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

use crate::*;

extern_protocol!(
    pub unsafe trait NSUserActivityRestoring: NSObjectProtocol + IsMainThreadOnly {
        #[method(restoreUserActivityState:)]
        unsafe fn restoreUserActivityState(&self, user_activity: &NSUserActivity);
    }

    unsafe impl ProtocolType for dyn NSUserActivityRestoring {}
);

extern_methods!(
    /// NSUserActivity
    #[cfg(feature = "NSResponder")]
    unsafe impl NSResponder {
        #[method_id(@__retain_semantics Other userActivity)]
        pub unsafe fn userActivity(&self) -> Option<Retained<NSUserActivity>>;

        #[method(setUserActivity:)]
        pub unsafe fn setUserActivity(&self, user_activity: Option<&NSUserActivity>);

        #[method(updateUserActivityState:)]
        pub unsafe fn updateUserActivityState(&self, user_activity: &NSUserActivity);
    }
);

#[cfg(feature = "NSResponder")]
unsafe impl NSUserActivityRestoring for NSResponder {}

extern_methods!(
    /// NSUserActivity
    #[cfg(feature = "NSDocument")]
    unsafe impl NSDocument {
        #[method_id(@__retain_semantics Other userActivity)]
        pub unsafe fn userActivity(&self) -> Option<Retained<NSUserActivity>>;

        #[method(setUserActivity:)]
        pub unsafe fn setUserActivity(&self, user_activity: Option<&NSUserActivity>);

        #[method(updateUserActivityState:)]
        pub unsafe fn updateUserActivityState(&self, activity: &NSUserActivity);
    }
);

#[cfg(feature = "NSDocument")]
unsafe impl NSUserActivityRestoring for NSDocument {}

extern "C" {
    pub static NSUserActivityDocumentURLKey: &'static NSString;
}