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!(
unsafe impl NSVisualEffectView {
#[method_id(@__retain_semantics Init initWithFrame:)]
pub unsafe fn initWithFrame(
this: Option<Allocated<Self>>,
frameRect: NSRect,
) -> Id<Self, Shared>;
}
);