use objc2::__framework_prelude::*;
#[cfg(feature = "objc2-core-image")]
#[cfg(not(target_os = "watchos"))]
use objc2_core_image::*;
use objc2_foundation::*;
use crate::*;
extern_class!(
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct UIColor;
unsafe impl ClassType for UIColor {
type Super = NSObject;
type Mutability = InteriorMutable;
}
);
unsafe impl Send for UIColor {}
unsafe impl Sync for UIColor {}
unsafe impl NSCoding for UIColor {}
unsafe impl NSCopying for UIColor {}
unsafe impl NSObjectProtocol for UIColor {}
unsafe impl NSSecureCoding for UIColor {}
extern_methods!(
unsafe impl UIColor {
#[method_id(@__retain_semantics Other colorWithWhite:alpha:)]
pub unsafe fn colorWithWhite_alpha(white: CGFloat, alpha: CGFloat) -> Retained<UIColor>;
#[method_id(@__retain_semantics Other colorWithHue:saturation:brightness:alpha:)]
pub unsafe fn colorWithHue_saturation_brightness_alpha(
hue: CGFloat,
saturation: CGFloat,
brightness: CGFloat,
alpha: CGFloat,
) -> Retained<UIColor>;
#[method_id(@__retain_semantics Other colorWithRed:green:blue:alpha:)]
pub unsafe fn colorWithRed_green_blue_alpha(
red: CGFloat,
green: CGFloat,
blue: CGFloat,
alpha: CGFloat,
) -> Retained<UIColor>;
#[method_id(@__retain_semantics Other colorWithDisplayP3Red:green:blue:alpha:)]
pub unsafe fn colorWithDisplayP3Red_green_blue_alpha(
display_p3_red: CGFloat,
green: CGFloat,
blue: CGFloat,
alpha: CGFloat,
) -> Retained<UIColor>;
#[cfg(feature = "UIImage")]
#[method_id(@__retain_semantics Other colorWithPatternImage:)]
pub unsafe fn colorWithPatternImage(image: &UIImage) -> Retained<UIColor>;
#[cfg(feature = "objc2-core-image")]
#[cfg(not(target_os = "watchos"))]
#[method_id(@__retain_semantics Other colorWithCIColor:)]
pub unsafe fn colorWithCIColor(ci_color: &CIColor) -> Retained<UIColor>;
#[method_id(@__retain_semantics Init initWithWhite:alpha:)]
pub unsafe fn initWithWhite_alpha(
this: Allocated<Self>,
white: CGFloat,
alpha: CGFloat,
) -> Retained<UIColor>;
#[method_id(@__retain_semantics Init initWithHue:saturation:brightness:alpha:)]
pub unsafe fn initWithHue_saturation_brightness_alpha(
this: Allocated<Self>,
hue: CGFloat,
saturation: CGFloat,
brightness: CGFloat,
alpha: CGFloat,
) -> Retained<UIColor>;
#[method_id(@__retain_semantics Init initWithRed:green:blue:alpha:)]
pub unsafe fn initWithRed_green_blue_alpha(
this: Allocated<Self>,
red: CGFloat,
green: CGFloat,
blue: CGFloat,
alpha: CGFloat,
) -> Retained<UIColor>;
#[method_id(@__retain_semantics Init initWithDisplayP3Red:green:blue:alpha:)]
pub unsafe fn initWithDisplayP3Red_green_blue_alpha(
this: Allocated<Self>,
display_p3_red: CGFloat,
green: CGFloat,
blue: CGFloat,
alpha: CGFloat,
) -> Retained<UIColor>;
#[cfg(feature = "UIImage")]
#[method_id(@__retain_semantics Init initWithPatternImage:)]
pub unsafe fn initWithPatternImage(
this: Allocated<Self>,
image: &UIImage,
) -> Retained<UIColor>;
#[cfg(feature = "objc2-core-image")]
#[cfg(not(target_os = "watchos"))]
#[method_id(@__retain_semantics Init initWithCIColor:)]
pub unsafe fn initWithCIColor(
this: Allocated<Self>,
ci_color: &CIColor,
) -> Retained<UIColor>;
#[method_id(@__retain_semantics Other blackColor)]
pub unsafe fn blackColor() -> Retained<UIColor>;
#[method_id(@__retain_semantics Other darkGrayColor)]
pub unsafe fn darkGrayColor() -> Retained<UIColor>;
#[method_id(@__retain_semantics Other lightGrayColor)]
pub unsafe fn lightGrayColor() -> Retained<UIColor>;
#[method_id(@__retain_semantics Other whiteColor)]
pub unsafe fn whiteColor() -> Retained<UIColor>;
#[method_id(@__retain_semantics Other grayColor)]
pub unsafe fn grayColor() -> Retained<UIColor>;
#[method_id(@__retain_semantics Other redColor)]
pub unsafe fn redColor() -> Retained<UIColor>;
#[method_id(@__retain_semantics Other greenColor)]
pub unsafe fn greenColor() -> Retained<UIColor>;
#[method_id(@__retain_semantics Other blueColor)]
pub unsafe fn blueColor() -> Retained<UIColor>;
#[method_id(@__retain_semantics Other cyanColor)]
pub unsafe fn cyanColor() -> Retained<UIColor>;
#[method_id(@__retain_semantics Other yellowColor)]
pub unsafe fn yellowColor() -> Retained<UIColor>;
#[method_id(@__retain_semantics Other magentaColor)]
pub unsafe fn magentaColor() -> Retained<UIColor>;
#[method_id(@__retain_semantics Other orangeColor)]
pub unsafe fn orangeColor() -> Retained<UIColor>;
#[method_id(@__retain_semantics Other purpleColor)]
pub unsafe fn purpleColor() -> Retained<UIColor>;
#[method_id(@__retain_semantics Other brownColor)]
pub unsafe fn brownColor() -> Retained<UIColor>;
#[method_id(@__retain_semantics Other clearColor)]
pub unsafe fn clearColor() -> Retained<UIColor>;
#[method(set)]
pub unsafe fn set(&self);
#[method(setFill)]
pub unsafe fn setFill(&self);
#[method(setStroke)]
pub unsafe fn setStroke(&self);
#[method(getWhite:alpha:)]
pub unsafe fn getWhite_alpha(&self, white: *mut CGFloat, alpha: *mut CGFloat) -> bool;
#[method(getHue:saturation:brightness:alpha:)]
pub unsafe fn getHue_saturation_brightness_alpha(
&self,
hue: *mut CGFloat,
saturation: *mut CGFloat,
brightness: *mut CGFloat,
alpha: *mut CGFloat,
) -> bool;
#[method(getRed:green:blue:alpha:)]
pub unsafe fn getRed_green_blue_alpha(
&self,
red: *mut CGFloat,
green: *mut CGFloat,
blue: *mut CGFloat,
alpha: *mut CGFloat,
) -> bool;
#[method_id(@__retain_semantics Other colorWithAlphaComponent:)]
pub unsafe fn colorWithAlphaComponent(&self, alpha: CGFloat) -> Retained<UIColor>;
#[cfg(feature = "objc2-core-image")]
#[cfg(not(target_os = "watchos"))]
#[method_id(@__retain_semantics Other CIColor)]
pub unsafe fn CIColor(&self) -> Retained<CIColor>;
}
);
extern_methods!(
unsafe impl UIColor {
#[method_id(@__retain_semantics Init init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[method_id(@__retain_semantics New new)]
pub unsafe fn new() -> Retained<Self>;
}
);
extern_methods!(
unsafe impl UIColor {}
);
unsafe impl NSItemProviderReading for UIColor {}
unsafe impl NSItemProviderWriting for UIColor {}
extern_category!(
#[doc(alias = "UIKitAdditions")]
pub unsafe trait CIColorUIKitAdditions {
#[method_id(@__retain_semantics Init initWithColor:)]
unsafe fn initWithColor(this: Allocated<Self>, color: &UIColor) -> Retained<Self>;
}
#[cfg(feature = "objc2-core-image")]
#[cfg(not(target_os = "watchos"))]
unsafe impl CIColorUIKitAdditions for CIColor {}
);
extern_methods!(
unsafe impl UIColor {
#[method_id(@__retain_semantics Other colorNamed:)]
pub unsafe fn colorNamed(name: &NSString) -> Option<Retained<UIColor>>;
#[cfg(feature = "UITraitCollection")]
#[method_id(@__retain_semantics Other colorNamed:inBundle:compatibleWithTraitCollection:)]
pub unsafe fn colorNamed_inBundle_compatibleWithTraitCollection(
name: &NSString,
bundle: Option<&NSBundle>,
trait_collection: Option<&UITraitCollection>,
) -> Option<Retained<UIColor>>;
}
);
extern_methods!(
unsafe impl UIColor {
#[cfg(all(feature = "UITraitCollection", feature = "block2"))]
#[method_id(@__retain_semantics Other colorWithDynamicProvider:)]
pub unsafe fn colorWithDynamicProvider(
dynamic_provider: &block2::Block<
dyn Fn(NonNull<UITraitCollection>) -> NonNull<UIColor>,
>,
) -> Retained<UIColor>;
#[cfg(all(feature = "UITraitCollection", feature = "block2"))]
#[method_id(@__retain_semantics Init initWithDynamicProvider:)]
pub unsafe fn initWithDynamicProvider(
this: Allocated<Self>,
dynamic_provider: &block2::Block<
dyn Fn(NonNull<UITraitCollection>) -> NonNull<UIColor>,
>,
) -> Retained<UIColor>;
#[cfg(feature = "UITraitCollection")]
#[method_id(@__retain_semantics Other resolvedColorWithTraitCollection:)]
pub unsafe fn resolvedColorWithTraitCollection(
&self,
trait_collection: &UITraitCollection,
) -> Retained<UIColor>;
}
);