icrate 0.0.1

Bindings to Apple's frameworks
Documentation
//! This file has been automatically generated by `objc2`'s `header-translator`.
//! DO NOT EDIT
use crate::common::*;
use crate::AppKit::*;
use crate::CoreData::*;
use crate::Foundation::*;

ns_enum!(
    #[underlying(NSInteger)]
    pub enum NSVisualEffectMaterial {
        NSVisualEffectMaterialTitlebar = 3,
        NSVisualEffectMaterialSelection = 4,
        NSVisualEffectMaterialMenu = 5,
        NSVisualEffectMaterialPopover = 6,
        NSVisualEffectMaterialSidebar = 7,
        NSVisualEffectMaterialHeaderView = 10,
        NSVisualEffectMaterialSheet = 11,
        NSVisualEffectMaterialWindowBackground = 12,
        NSVisualEffectMaterialHUDWindow = 13,
        NSVisualEffectMaterialFullScreenUI = 15,
        NSVisualEffectMaterialToolTip = 17,
        NSVisualEffectMaterialContentBackground = 18,
        NSVisualEffectMaterialUnderWindowBackground = 21,
        NSVisualEffectMaterialUnderPageBackground = 22,
        NSVisualEffectMaterialAppearanceBased = 0,
        NSVisualEffectMaterialLight = 1,
        NSVisualEffectMaterialDark = 2,
        NSVisualEffectMaterialMediumLight = 8,
        NSVisualEffectMaterialUltraDark = 9,
    }
);

ns_enum!(
    #[underlying(NSInteger)]
    pub enum NSVisualEffectBlendingMode {
        NSVisualEffectBlendingModeBehindWindow = 0,
        NSVisualEffectBlendingModeWithinWindow = 1,
    }
);

ns_enum!(
    #[underlying(NSInteger)]
    pub enum NSVisualEffectState {
        NSVisualEffectStateFollowsWindowActiveState = 0,
        NSVisualEffectStateActive = 1,
        NSVisualEffectStateInactive = 2,
    }
);

extern_class!(
    #[derive(Debug, PartialEq, Eq, Hash)]
    pub struct NSVisualEffectView;

    unsafe impl ClassType for NSVisualEffectView {
        #[inherits(NSResponder, NSObject)]
        type Super = NSView;
    }
);

extern_methods!(
    unsafe impl NSVisualEffectView {
        #[method(material)]
        pub unsafe fn material(&self) -> NSVisualEffectMaterial;

        #[method(setMaterial:)]
        pub unsafe fn setMaterial(&self, material: NSVisualEffectMaterial);

        #[method(interiorBackgroundStyle)]
        pub unsafe fn interiorBackgroundStyle(&self) -> NSBackgroundStyle;

        #[method(blendingMode)]
        pub unsafe fn blendingMode(&self) -> NSVisualEffectBlendingMode;

        #[method(setBlendingMode:)]
        pub unsafe fn setBlendingMode(&self, blendingMode: NSVisualEffectBlendingMode);

        #[method(state)]
        pub unsafe fn state(&self) -> NSVisualEffectState;

        #[method(setState:)]
        pub unsafe fn setState(&self, state: NSVisualEffectState);

        #[method_id(@__retain_semantics Other maskImage)]
        pub unsafe fn maskImage(&self) -> Option<Id<NSImage, Shared>>;

        #[method(setMaskImage:)]
        pub unsafe fn setMaskImage(&self, maskImage: Option<&NSImage>);

        #[method(isEmphasized)]
        pub unsafe fn isEmphasized(&self) -> bool;

        #[method(setEmphasized:)]
        pub unsafe fn setEmphasized(&self, emphasized: bool);

        #[method(viewDidMoveToWindow)]
        pub unsafe fn viewDidMoveToWindow(&self);

        #[method(viewWillMoveToWindow:)]
        pub unsafe fn viewWillMoveToWindow(&self, newWindow: Option<&NSWindow>);
    }
);

extern_methods!(
    /// Methods declared on superclass `NSView`
    unsafe impl NSVisualEffectView {
        #[method_id(@__retain_semantics Init initWithFrame:)]
        pub unsafe fn initWithFrame(
            this: Option<Allocated<Self>>,
            frameRect: NSRect,
        ) -> Id<Self, Shared>;
    }
);