objc2_app_kit/generated/
NSViewLayoutRegion.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ptr::NonNull;
4use objc2::__framework_prelude::*;
5use objc2_foundation::*;
6
7use crate::*;
8
9/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsviewlayoutregionadaptivityaxis?language=objc)
10// NS_ENUM
11#[repr(transparent)]
12#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
13pub struct NSViewLayoutRegionAdaptivityAxis(pub NSInteger);
14impl NSViewLayoutRegionAdaptivityAxis {
15    #[doc(alias = "NSViewLayoutRegionAdaptivityAxisNone")]
16    pub const None: Self = Self(0);
17    #[doc(alias = "NSViewLayoutRegionAdaptivityAxisHorizontal")]
18    pub const Horizontal: Self = Self(1);
19    #[doc(alias = "NSViewLayoutRegionAdaptivityAxisVertical")]
20    pub const Vertical: Self = Self(2);
21}
22
23unsafe impl Encode for NSViewLayoutRegionAdaptivityAxis {
24    const ENCODING: Encoding = NSInteger::ENCODING;
25}
26
27unsafe impl RefEncode for NSViewLayoutRegionAdaptivityAxis {
28    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
29}
30
31extern_class!(
32    /// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsviewlayoutregion?language=objc)
33    #[unsafe(super(NSObject))]
34    #[derive(Debug, PartialEq, Eq, Hash)]
35    pub struct NSViewLayoutRegion;
36);
37
38extern_conformance!(
39    unsafe impl NSObjectProtocol for NSViewLayoutRegion {}
40);
41
42impl NSViewLayoutRegion {
43    extern_methods!(
44        #[unsafe(method(safeAreaLayoutRegionWithCornerAdaptation:))]
45        #[unsafe(method_family = none)]
46        pub fn safeAreaLayoutRegionWithCornerAdaptation(
47            adaptivity_axis: NSViewLayoutRegionAdaptivityAxis,
48        ) -> Retained<NSViewLayoutRegion>;
49
50        #[unsafe(method(marginsLayoutRegionWithCornerAdaptation:))]
51        #[unsafe(method_family = none)]
52        pub fn marginsLayoutRegionWithCornerAdaptation(
53            adaptivity_axis: NSViewLayoutRegionAdaptivityAxis,
54        ) -> Retained<NSViewLayoutRegion>;
55
56        #[unsafe(method(new))]
57        #[unsafe(method_family = new)]
58        pub unsafe fn new() -> Retained<Self>;
59
60        #[unsafe(method(init))]
61        #[unsafe(method_family = init)]
62        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
63    );
64}
65
66/// LayoutRegions.
67#[cfg(all(feature = "NSResponder", feature = "NSView"))]
68impl NSView {
69    extern_methods!(
70        #[cfg(feature = "NSLayoutGuide")]
71        #[unsafe(method(layoutGuideForLayoutRegion:))]
72        #[unsafe(method_family = none)]
73        pub fn layoutGuideForLayoutRegion(
74            &self,
75            layout_region: &NSViewLayoutRegion,
76        ) -> Retained<NSLayoutGuide>;
77
78        #[unsafe(method(edgeInsetsForLayoutRegion:))]
79        #[unsafe(method_family = none)]
80        pub fn edgeInsetsForLayoutRegion(&self, layout_region: &NSViewLayoutRegion)
81            -> NSEdgeInsets;
82
83        #[unsafe(method(rectForLayoutRegion:))]
84        #[unsafe(method_family = none)]
85        pub fn rectForLayoutRegion(&self, layout_region: &NSViewLayoutRegion) -> NSRect;
86    );
87}