1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
//! This file has been automatically generated by `objc2`'s `header-translator`.
//! DO NOT EDIT
use objc2::__framework_prelude::*;
use objc2_foundation::*;

use crate::*;

// NS_ENUM
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct UICellConfigurationDragState(pub NSInteger);
impl UICellConfigurationDragState {
    #[doc(alias = "UICellConfigurationDragStateNone")]
    pub const None: Self = Self(0);
    #[doc(alias = "UICellConfigurationDragStateLifting")]
    pub const Lifting: Self = Self(1);
    #[doc(alias = "UICellConfigurationDragStateDragging")]
    pub const Dragging: Self = Self(2);
}

unsafe impl Encode for UICellConfigurationDragState {
    const ENCODING: Encoding = NSInteger::ENCODING;
}

unsafe impl RefEncode for UICellConfigurationDragState {
    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}

// NS_ENUM
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct UICellConfigurationDropState(pub NSInteger);
impl UICellConfigurationDropState {
    #[doc(alias = "UICellConfigurationDropStateNone")]
    pub const None: Self = Self(0);
    #[doc(alias = "UICellConfigurationDropStateNotTargeted")]
    pub const NotTargeted: Self = Self(1);
    #[doc(alias = "UICellConfigurationDropStateTargeted")]
    pub const Targeted: Self = Self(2);
}

unsafe impl Encode for UICellConfigurationDropState {
    const ENCODING: Encoding = NSInteger::ENCODING;
}

unsafe impl RefEncode for UICellConfigurationDropState {
    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}

extern_class!(
    #[derive(Debug, PartialEq, Eq, Hash)]
    #[cfg(feature = "UIViewConfigurationState")]
    pub struct UICellConfigurationState;

    #[cfg(feature = "UIViewConfigurationState")]
    unsafe impl ClassType for UICellConfigurationState {
        #[inherits(NSObject)]
        type Super = UIViewConfigurationState;
        type Mutability = MainThreadOnly;
    }
);

#[cfg(feature = "UIViewConfigurationState")]
unsafe impl NSCoding for UICellConfigurationState {}

#[cfg(feature = "UIViewConfigurationState")]
unsafe impl NSCopying for UICellConfigurationState {}

#[cfg(feature = "UIViewConfigurationState")]
unsafe impl NSObjectProtocol for UICellConfigurationState {}

#[cfg(feature = "UIViewConfigurationState")]
unsafe impl NSSecureCoding for UICellConfigurationState {}

#[cfg(all(feature = "UIConfigurationState", feature = "UIViewConfigurationState"))]
unsafe impl UIConfigurationState for UICellConfigurationState {}

extern_methods!(
    #[cfg(feature = "UIViewConfigurationState")]
    unsafe impl UICellConfigurationState {
        #[method(isEditing)]
        pub unsafe fn isEditing(&self) -> bool;

        #[method(setEditing:)]
        pub unsafe fn setEditing(&self, editing: bool);

        #[method(isExpanded)]
        pub unsafe fn isExpanded(&self) -> bool;

        #[method(setExpanded:)]
        pub unsafe fn setExpanded(&self, expanded: bool);

        #[method(isSwiped)]
        pub unsafe fn isSwiped(&self) -> bool;

        #[method(setSwiped:)]
        pub unsafe fn setSwiped(&self, swiped: bool);

        #[method(isReordering)]
        pub unsafe fn isReordering(&self) -> bool;

        #[method(setReordering:)]
        pub unsafe fn setReordering(&self, reordering: bool);

        #[method(cellDragState)]
        pub unsafe fn cellDragState(&self) -> UICellConfigurationDragState;

        #[method(setCellDragState:)]
        pub unsafe fn setCellDragState(&self, cell_drag_state: UICellConfigurationDragState);

        #[method(cellDropState)]
        pub unsafe fn cellDropState(&self) -> UICellConfigurationDropState;

        #[method(setCellDropState:)]
        pub unsafe fn setCellDropState(&self, cell_drop_state: UICellConfigurationDropState);
    }
);

extern_methods!(
    /// Methods declared on superclass `UIViewConfigurationState`
    #[cfg(feature = "UIViewConfigurationState")]
    unsafe impl UICellConfigurationState {
        #[cfg(feature = "UITraitCollection")]
        #[method_id(@__retain_semantics Init initWithTraitCollection:)]
        pub unsafe fn initWithTraitCollection(
            this: Allocated<Self>,
            trait_collection: &UITraitCollection,
        ) -> Retained<Self>;

        #[method_id(@__retain_semantics Init initWithCoder:)]
        pub unsafe fn initWithCoder(
            this: Allocated<Self>,
            coder: &NSCoder,
        ) -> Option<Retained<Self>>;

        #[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(mtm: MainThreadMarker) -> Retained<Self>;
    }
);