objc2_quartz_core/generated/
CAConstraintLayoutManager.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6#[cfg(feature = "objc2-core-foundation")]
7use objc2_core_foundation::*;
8use objc2_foundation::*;
9
10use crate::*;
11
12#[repr(transparent)]
15#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
16pub struct CAConstraintAttribute(pub c_int);
17impl CAConstraintAttribute {
18 #[doc(alias = "kCAConstraintMinX")]
19 pub const MinX: Self = Self(0);
20 #[doc(alias = "kCAConstraintMidX")]
21 pub const MidX: Self = Self(1);
22 #[doc(alias = "kCAConstraintMaxX")]
23 pub const MaxX: Self = Self(2);
24 #[doc(alias = "kCAConstraintWidth")]
25 pub const Width: Self = Self(3);
26 #[doc(alias = "kCAConstraintMinY")]
27 pub const MinY: Self = Self(4);
28 #[doc(alias = "kCAConstraintMidY")]
29 pub const MidY: Self = Self(5);
30 #[doc(alias = "kCAConstraintMaxY")]
31 pub const MaxY: Self = Self(6);
32 #[doc(alias = "kCAConstraintHeight")]
33 pub const Height: Self = Self(7);
34}
35
36unsafe impl Encode for CAConstraintAttribute {
37 const ENCODING: Encoding = c_int::ENCODING;
38}
39
40unsafe impl RefEncode for CAConstraintAttribute {
41 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
42}
43
44#[cfg(feature = "CALayer")]
47impl CALayer {
48 extern_methods!(
49 #[unsafe(method(constraints))]
50 #[unsafe(method_family = none)]
51 pub unsafe fn constraints(&self) -> Option<Retained<NSArray<CAConstraint>>>;
52
53 #[unsafe(method(setConstraints:))]
55 #[unsafe(method_family = none)]
56 pub unsafe fn setConstraints(&self, constraints: Option<&NSArray<CAConstraint>>);
57
58 #[unsafe(method(addConstraint:))]
59 #[unsafe(method_family = none)]
60 pub unsafe fn addConstraint(&self, c: &CAConstraint);
61 );
62}
63
64extern_class!(
65 #[unsafe(super(NSObject))]
69 #[derive(Debug, PartialEq, Eq, Hash)]
70 pub struct CAConstraintLayoutManager;
71);
72
73#[cfg(feature = "CALayer")]
74extern_conformance!(
75 unsafe impl CALayoutManager for CAConstraintLayoutManager {}
76);
77
78extern_conformance!(
79 unsafe impl NSObjectProtocol for CAConstraintLayoutManager {}
80);
81
82impl CAConstraintLayoutManager {
83 extern_methods!(
84 #[unsafe(method(layoutManager))]
85 #[unsafe(method_family = none)]
86 pub unsafe fn layoutManager() -> Retained<Self>;
87 );
88}
89
90impl CAConstraintLayoutManager {
92 extern_methods!(
93 #[unsafe(method(init))]
94 #[unsafe(method_family = init)]
95 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
96
97 #[unsafe(method(new))]
98 #[unsafe(method_family = new)]
99 pub unsafe fn new() -> Retained<Self>;
100 );
101}
102
103extern_class!(
104 #[unsafe(super(NSObject))]
108 #[derive(Debug, PartialEq, Eq, Hash)]
109 pub struct CAConstraint;
110);
111
112extern_conformance!(
113 unsafe impl NSCoding for CAConstraint {}
114);
115
116extern_conformance!(
117 unsafe impl NSObjectProtocol for CAConstraint {}
118);
119
120extern_conformance!(
121 unsafe impl NSSecureCoding for CAConstraint {}
122);
123
124impl CAConstraint {
125 extern_methods!(
126 #[cfg(feature = "objc2-core-foundation")]
127 #[unsafe(method(constraintWithAttribute:relativeTo:attribute:scale:offset:))]
128 #[unsafe(method_family = none)]
129 pub unsafe fn constraintWithAttribute_relativeTo_attribute_scale_offset(
130 attr: CAConstraintAttribute,
131 src_id: &NSString,
132 src_attr: CAConstraintAttribute,
133 m: CGFloat,
134 c: CGFloat,
135 ) -> Retained<Self>;
136
137 #[cfg(feature = "objc2-core-foundation")]
138 #[unsafe(method(constraintWithAttribute:relativeTo:attribute:offset:))]
139 #[unsafe(method_family = none)]
140 pub unsafe fn constraintWithAttribute_relativeTo_attribute_offset(
141 attr: CAConstraintAttribute,
142 src_id: &NSString,
143 src_attr: CAConstraintAttribute,
144 c: CGFloat,
145 ) -> Retained<Self>;
146
147 #[unsafe(method(constraintWithAttribute:relativeTo:attribute:))]
148 #[unsafe(method_family = none)]
149 pub unsafe fn constraintWithAttribute_relativeTo_attribute(
150 attr: CAConstraintAttribute,
151 src_id: &NSString,
152 src_attr: CAConstraintAttribute,
153 ) -> Retained<Self>;
154
155 #[cfg(feature = "objc2-core-foundation")]
156 #[unsafe(method(initWithAttribute:relativeTo:attribute:scale:offset:))]
157 #[unsafe(method_family = init)]
158 pub unsafe fn initWithAttribute_relativeTo_attribute_scale_offset(
159 this: Allocated<Self>,
160 attr: CAConstraintAttribute,
161 src_id: &NSString,
162 src_attr: CAConstraintAttribute,
163 m: CGFloat,
164 c: CGFloat,
165 ) -> Retained<Self>;
166
167 #[unsafe(method(attribute))]
168 #[unsafe(method_family = none)]
169 pub unsafe fn attribute(&self) -> CAConstraintAttribute;
170
171 #[unsafe(method(sourceName))]
172 #[unsafe(method_family = none)]
173 pub unsafe fn sourceName(&self) -> Retained<NSString>;
174
175 #[unsafe(method(sourceAttribute))]
176 #[unsafe(method_family = none)]
177 pub unsafe fn sourceAttribute(&self) -> CAConstraintAttribute;
178
179 #[cfg(feature = "objc2-core-foundation")]
180 #[unsafe(method(scale))]
181 #[unsafe(method_family = none)]
182 pub unsafe fn scale(&self) -> CGFloat;
183
184 #[cfg(feature = "objc2-core-foundation")]
185 #[unsafe(method(offset))]
186 #[unsafe(method_family = none)]
187 pub unsafe fn offset(&self) -> CGFloat;
188 );
189}
190
191impl CAConstraint {
193 extern_methods!(
194 #[unsafe(method(init))]
195 #[unsafe(method_family = init)]
196 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
197
198 #[unsafe(method(new))]
199 #[unsafe(method_family = new)]
200 pub unsafe fn new() -> Retained<Self>;
201 );
202}