use objc2::__framework_prelude::*;
use objc2_foundation::*;
use crate::*;
extern_class!(
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct NSUserInterfaceCompressionOptions;
unsafe impl ClassType for NSUserInterfaceCompressionOptions {
type Super = NSObject;
type Mutability = Immutable;
}
);
unsafe impl NSCoding for NSUserInterfaceCompressionOptions {}
unsafe impl NSCopying for NSUserInterfaceCompressionOptions {}
unsafe impl NSObjectProtocol for NSUserInterfaceCompressionOptions {}
extern_methods!(
unsafe impl NSUserInterfaceCompressionOptions {
#[method_id(@__retain_semantics Init init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[method_id(@__retain_semantics Init initWithCoder:)]
pub unsafe fn initWithCoder(this: Allocated<Self>, coder: &NSCoder) -> Retained<Self>;
#[method_id(@__retain_semantics Init initWithIdentifier:)]
pub unsafe fn initWithIdentifier(
this: Allocated<Self>,
identifier: &NSString,
) -> Retained<Self>;
#[method_id(@__retain_semantics Init initWithCompressionOptions:)]
pub unsafe fn initWithCompressionOptions(
this: Allocated<Self>,
options: &NSSet<NSUserInterfaceCompressionOptions>,
) -> Retained<Self>;
#[method(containsOptions:)]
pub unsafe fn containsOptions(&self, options: &NSUserInterfaceCompressionOptions) -> bool;
#[method(intersectsOptions:)]
pub unsafe fn intersectsOptions(&self, options: &NSUserInterfaceCompressionOptions)
-> bool;
#[method(isEmpty)]
pub unsafe fn isEmpty(&self) -> bool;
#[method_id(@__retain_semantics Other optionsByAddingOptions:)]
pub unsafe fn optionsByAddingOptions(
&self,
options: &NSUserInterfaceCompressionOptions,
) -> Retained<NSUserInterfaceCompressionOptions>;
#[method_id(@__retain_semantics Other optionsByRemovingOptions:)]
pub unsafe fn optionsByRemovingOptions(
&self,
options: &NSUserInterfaceCompressionOptions,
) -> Retained<NSUserInterfaceCompressionOptions>;
#[method_id(@__retain_semantics Other hideImagesOption)]
pub unsafe fn hideImagesOption() -> Retained<NSUserInterfaceCompressionOptions>;
#[method_id(@__retain_semantics Other hideTextOption)]
pub unsafe fn hideTextOption() -> Retained<NSUserInterfaceCompressionOptions>;
#[method_id(@__retain_semantics Other reduceMetricsOption)]
pub unsafe fn reduceMetricsOption() -> Retained<NSUserInterfaceCompressionOptions>;
#[method_id(@__retain_semantics Other breakEqualWidthsOption)]
pub unsafe fn breakEqualWidthsOption() -> Retained<NSUserInterfaceCompressionOptions>;
#[method_id(@__retain_semantics Other standardOptions)]
pub unsafe fn standardOptions() -> Retained<NSUserInterfaceCompressionOptions>;
}
);
extern_methods!(
unsafe impl NSUserInterfaceCompressionOptions {
#[method_id(@__retain_semantics New new)]
pub unsafe fn new() -> Retained<Self>;
}
);
extern_protocol!(
pub unsafe trait NSUserInterfaceCompression {
#[method(compressWithPrioritizedCompressionOptions:)]
unsafe fn compressWithPrioritizedCompressionOptions(
&self,
prioritized_options: &NSArray<NSUserInterfaceCompressionOptions>,
);
#[method(minimumSizeWithPrioritizedCompressionOptions:)]
unsafe fn minimumSizeWithPrioritizedCompressionOptions(
&self,
prioritized_options: &NSArray<NSUserInterfaceCompressionOptions>,
) -> NSSize;
#[method_id(@__retain_semantics Other activeCompressionOptions)]
unsafe fn activeCompressionOptions(&self) -> Retained<NSUserInterfaceCompressionOptions>;
}
unsafe impl ProtocolType for dyn NSUserInterfaceCompression {}
);