objc2_ui_kit/generated/
UITableViewCell.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6#[cfg(feature = "objc2-core-foundation")]
7use objc2_core_foundation::*;
8use objc2_foundation::*;
9#[cfg(feature = "objc2-quartz-core")]
10#[cfg(not(target_os = "watchos"))]
11use objc2_quartz_core::*;
12
13use crate::*;
14
15/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitableviewcellstyle?language=objc)
16// NS_ENUM
17#[repr(transparent)]
18#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
19pub struct UITableViewCellStyle(pub NSInteger);
20impl UITableViewCellStyle {
21    #[doc(alias = "UITableViewCellStyleDefault")]
22    pub const Default: Self = Self(0);
23    #[doc(alias = "UITableViewCellStyleValue1")]
24    pub const Value1: Self = Self(1);
25    #[doc(alias = "UITableViewCellStyleValue2")]
26    pub const Value2: Self = Self(2);
27    #[doc(alias = "UITableViewCellStyleSubtitle")]
28    pub const Subtitle: Self = Self(3);
29}
30
31unsafe impl Encode for UITableViewCellStyle {
32    const ENCODING: Encoding = NSInteger::ENCODING;
33}
34
35unsafe impl RefEncode for UITableViewCellStyle {
36    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
37}
38
39/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitableviewcellseparatorstyle?language=objc)
40// NS_ENUM
41#[repr(transparent)]
42#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
43pub struct UITableViewCellSeparatorStyle(pub NSInteger);
44impl UITableViewCellSeparatorStyle {
45    #[doc(alias = "UITableViewCellSeparatorStyleNone")]
46    pub const None: Self = Self(0);
47    #[doc(alias = "UITableViewCellSeparatorStyleSingleLine")]
48    pub const SingleLine: Self = Self(1);
49    #[doc(alias = "UITableViewCellSeparatorStyleSingleLineEtched")]
50    #[deprecated = "Use UITableViewCellSeparatorStyleSingleLine for a single line separator."]
51    pub const SingleLineEtched: Self = Self(2);
52}
53
54unsafe impl Encode for UITableViewCellSeparatorStyle {
55    const ENCODING: Encoding = NSInteger::ENCODING;
56}
57
58unsafe impl RefEncode for UITableViewCellSeparatorStyle {
59    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
60}
61
62/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitableviewcellselectionstyle?language=objc)
63// NS_ENUM
64#[repr(transparent)]
65#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
66pub struct UITableViewCellSelectionStyle(pub NSInteger);
67impl UITableViewCellSelectionStyle {
68    #[doc(alias = "UITableViewCellSelectionStyleNone")]
69    pub const None: Self = Self(0);
70    #[doc(alias = "UITableViewCellSelectionStyleBlue")]
71    pub const Blue: Self = Self(1);
72    #[doc(alias = "UITableViewCellSelectionStyleGray")]
73    pub const Gray: Self = Self(2);
74    #[doc(alias = "UITableViewCellSelectionStyleDefault")]
75    pub const Default: Self = Self(3);
76}
77
78unsafe impl Encode for UITableViewCellSelectionStyle {
79    const ENCODING: Encoding = NSInteger::ENCODING;
80}
81
82unsafe impl RefEncode for UITableViewCellSelectionStyle {
83    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
84}
85
86/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitableviewcellfocusstyle?language=objc)
87// NS_ENUM
88#[repr(transparent)]
89#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
90pub struct UITableViewCellFocusStyle(pub NSInteger);
91impl UITableViewCellFocusStyle {
92    #[doc(alias = "UITableViewCellFocusStyleDefault")]
93    pub const Default: Self = Self(0);
94    #[doc(alias = "UITableViewCellFocusStyleCustom")]
95    pub const Custom: Self = Self(1);
96}
97
98unsafe impl Encode for UITableViewCellFocusStyle {
99    const ENCODING: Encoding = NSInteger::ENCODING;
100}
101
102unsafe impl RefEncode for UITableViewCellFocusStyle {
103    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
104}
105
106/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitableviewcelleditingstyle?language=objc)
107// NS_ENUM
108#[repr(transparent)]
109#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
110pub struct UITableViewCellEditingStyle(pub NSInteger);
111impl UITableViewCellEditingStyle {
112    #[doc(alias = "UITableViewCellEditingStyleNone")]
113    pub const None: Self = Self(0);
114    #[doc(alias = "UITableViewCellEditingStyleDelete")]
115    pub const Delete: Self = Self(1);
116    #[doc(alias = "UITableViewCellEditingStyleInsert")]
117    pub const Insert: Self = Self(2);
118}
119
120unsafe impl Encode for UITableViewCellEditingStyle {
121    const ENCODING: Encoding = NSInteger::ENCODING;
122}
123
124unsafe impl RefEncode for UITableViewCellEditingStyle {
125    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
126}
127
128/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitableviewcellaccessorytype?language=objc)
129// NS_ENUM
130#[repr(transparent)]
131#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
132pub struct UITableViewCellAccessoryType(pub NSInteger);
133impl UITableViewCellAccessoryType {
134    #[doc(alias = "UITableViewCellAccessoryNone")]
135    pub const None: Self = Self(0);
136    #[doc(alias = "UITableViewCellAccessoryDisclosureIndicator")]
137    pub const DisclosureIndicator: Self = Self(1);
138    #[doc(alias = "UITableViewCellAccessoryDetailDisclosureButton")]
139    pub const DetailDisclosureButton: Self = Self(2);
140    #[doc(alias = "UITableViewCellAccessoryCheckmark")]
141    pub const Checkmark: Self = Self(3);
142    #[doc(alias = "UITableViewCellAccessoryDetailButton")]
143    pub const DetailButton: Self = Self(4);
144}
145
146unsafe impl Encode for UITableViewCellAccessoryType {
147    const ENCODING: Encoding = NSInteger::ENCODING;
148}
149
150unsafe impl RefEncode for UITableViewCellAccessoryType {
151    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
152}
153
154/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitableviewcellstatemask?language=objc)
155// NS_OPTIONS
156#[repr(transparent)]
157#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
158pub struct UITableViewCellStateMask(pub NSUInteger);
159bitflags::bitflags! {
160    impl UITableViewCellStateMask: NSUInteger {
161        #[doc(alias = "UITableViewCellStateDefaultMask")]
162        const DefaultMask = 0;
163        #[doc(alias = "UITableViewCellStateShowingEditControlMask")]
164        const ShowingEditControlMask = 1<<0;
165        #[doc(alias = "UITableViewCellStateShowingDeleteConfirmationMask")]
166        const ShowingDeleteConfirmationMask = 1<<1;
167    }
168}
169
170unsafe impl Encode for UITableViewCellStateMask {
171    const ENCODING: Encoding = NSUInteger::ENCODING;
172}
173
174unsafe impl RefEncode for UITableViewCellStateMask {
175    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
176}
177
178/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitableviewcelldragstate?language=objc)
179// NS_ENUM
180#[repr(transparent)]
181#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
182pub struct UITableViewCellDragState(pub NSInteger);
183impl UITableViewCellDragState {
184    #[doc(alias = "UITableViewCellDragStateNone")]
185    pub const None: Self = Self(0);
186    #[doc(alias = "UITableViewCellDragStateLifting")]
187    pub const Lifting: Self = Self(1);
188    #[doc(alias = "UITableViewCellDragStateDragging")]
189    pub const Dragging: Self = Self(2);
190}
191
192unsafe impl Encode for UITableViewCellDragState {
193    const ENCODING: Encoding = NSInteger::ENCODING;
194}
195
196unsafe impl RefEncode for UITableViewCellDragState {
197    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
198}
199
200/// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitableviewcellconfigurationupdatehandler?language=objc)
201#[cfg(all(
202    feature = "UICellConfigurationState",
203    feature = "UIResponder",
204    feature = "UIView",
205    feature = "UIViewConfigurationState",
206    feature = "block2"
207))]
208pub type UITableViewCellConfigurationUpdateHandler =
209    *mut block2::DynBlock<dyn Fn(NonNull<UITableViewCell>, NonNull<UICellConfigurationState>)>;
210
211extern_class!(
212    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uitableviewcell?language=objc)
213    #[unsafe(super(UIView, UIResponder, NSObject))]
214    #[thread_kind = MainThreadOnly]
215    #[derive(Debug, PartialEq, Eq, Hash)]
216    #[cfg(all(feature = "UIResponder", feature = "UIView"))]
217    pub struct UITableViewCell;
218);
219
220#[cfg(all(
221    feature = "UIResponder",
222    feature = "UIView",
223    feature = "objc2-quartz-core"
224))]
225#[cfg(not(target_os = "watchos"))]
226extern_conformance!(
227    unsafe impl CALayerDelegate for UITableViewCell {}
228);
229
230#[cfg(all(feature = "UIResponder", feature = "UIView"))]
231extern_conformance!(
232    unsafe impl NSCoding for UITableViewCell {}
233);
234
235#[cfg(all(feature = "UIResponder", feature = "UIView"))]
236extern_conformance!(
237    unsafe impl NSObjectProtocol for UITableViewCell {}
238);
239
240#[cfg(all(feature = "UIAppearance", feature = "UIResponder", feature = "UIView"))]
241extern_conformance!(
242    unsafe impl UIAppearance for UITableViewCell {}
243);
244
245#[cfg(all(feature = "UIAppearance", feature = "UIResponder", feature = "UIView"))]
246extern_conformance!(
247    unsafe impl UIAppearanceContainer for UITableViewCell {}
248);
249
250#[cfg(all(feature = "UIResponder", feature = "UIView"))]
251extern_conformance!(
252    unsafe impl UICoordinateSpace for UITableViewCell {}
253);
254
255#[cfg(all(
256    feature = "UIDynamicBehavior",
257    feature = "UIResponder",
258    feature = "UIView"
259))]
260extern_conformance!(
261    unsafe impl UIDynamicItem for UITableViewCell {}
262);
263
264#[cfg(all(feature = "UIFocus", feature = "UIResponder", feature = "UIView"))]
265extern_conformance!(
266    unsafe impl UIFocusEnvironment for UITableViewCell {}
267);
268
269#[cfg(all(feature = "UIFocus", feature = "UIResponder", feature = "UIView"))]
270extern_conformance!(
271    unsafe impl UIFocusItem for UITableViewCell {}
272);
273
274#[cfg(all(feature = "UIFocus", feature = "UIResponder", feature = "UIView"))]
275extern_conformance!(
276    unsafe impl UIFocusItemContainer for UITableViewCell {}
277);
278
279#[cfg(all(
280    feature = "UIGestureRecognizer",
281    feature = "UIResponder",
282    feature = "UIView"
283))]
284extern_conformance!(
285    unsafe impl UIGestureRecognizerDelegate for UITableViewCell {}
286);
287
288#[cfg(all(feature = "UIResponder", feature = "UIView"))]
289extern_conformance!(
290    unsafe impl UIResponderStandardEditActions for UITableViewCell {}
291);
292
293#[cfg(all(
294    feature = "UIResponder",
295    feature = "UITraitCollection",
296    feature = "UIView"
297))]
298extern_conformance!(
299    unsafe impl UITraitEnvironment for UITableViewCell {}
300);
301
302#[cfg(all(feature = "UIResponder", feature = "UIView"))]
303impl UITableViewCell {
304    extern_methods!(
305        #[unsafe(method(initWithStyle:reuseIdentifier:))]
306        #[unsafe(method_family = init)]
307        pub unsafe fn initWithStyle_reuseIdentifier(
308            this: Allocated<Self>,
309            style: UITableViewCellStyle,
310            reuse_identifier: Option<&NSString>,
311        ) -> Retained<Self>;
312
313        #[unsafe(method(initWithCoder:))]
314        #[unsafe(method_family = init)]
315        pub unsafe fn initWithCoder(
316            this: Allocated<Self>,
317            coder: &NSCoder,
318        ) -> Option<Retained<Self>>;
319
320        #[cfg(all(
321            feature = "UICellConfigurationState",
322            feature = "UIViewConfigurationState"
323        ))]
324        /// Returns the current configuration state for the cell.
325        /// To add your own custom state(s), override the getter and call super to obtain an instance with the
326        /// system properties set, then set your own custom states as desired.
327        #[unsafe(method(configurationState))]
328        #[unsafe(method_family = none)]
329        pub unsafe fn configurationState(&self) -> Retained<UICellConfigurationState>;
330
331        /// Requests the cell update its configuration for its current state. This method is called automatically
332        /// when the cell's `configurationState` may have changed, as well as in other circumstances where an
333        /// update may be required. Multiple requests may be coalesced into a single update at the appropriate time.
334        #[unsafe(method(setNeedsUpdateConfiguration))]
335        #[unsafe(method_family = none)]
336        pub unsafe fn setNeedsUpdateConfiguration(&self);
337
338        #[cfg(all(
339            feature = "UICellConfigurationState",
340            feature = "UIViewConfigurationState"
341        ))]
342        /// Subclasses should override this method and update the cell's configuration using the state provided.
343        /// This method should not be called directly, use `setNeedsUpdateConfiguration` to request an update.
344        #[unsafe(method(updateConfigurationUsingState:))]
345        #[unsafe(method_family = none)]
346        pub unsafe fn updateConfigurationUsingState(&self, state: &UICellConfigurationState);
347
348        #[cfg(all(
349            feature = "UICellConfigurationState",
350            feature = "UIViewConfigurationState",
351            feature = "block2"
352        ))]
353        /// Optional block-based alternative to overriding `-updateConfigurationUsingState:` in a subclass. This handler
354        /// is called after `-updateConfigurationUsingState:`. Setting a new handler triggers `setNeedsUpdateConfiguration`.
355        #[unsafe(method(configurationUpdateHandler))]
356        #[unsafe(method_family = none)]
357        pub unsafe fn configurationUpdateHandler(
358            &self,
359        ) -> UITableViewCellConfigurationUpdateHandler;
360
361        #[cfg(all(
362            feature = "UICellConfigurationState",
363            feature = "UIViewConfigurationState",
364            feature = "block2"
365        ))]
366        /// Setter for [`configurationUpdateHandler`][Self::configurationUpdateHandler].
367        #[unsafe(method(setConfigurationUpdateHandler:))]
368        #[unsafe(method_family = none)]
369        pub unsafe fn setConfigurationUpdateHandler(
370            &self,
371            configuration_update_handler: UITableViewCellConfigurationUpdateHandler,
372        );
373
374        #[cfg(feature = "UIListContentConfiguration")]
375        /// Returns a default list content configuration for the cell's style.
376        #[unsafe(method(defaultContentConfiguration))]
377        #[unsafe(method_family = none)]
378        pub unsafe fn defaultContentConfiguration(&self) -> Retained<UIListContentConfiguration>;
379
380        #[cfg(feature = "UIContentConfiguration")]
381        /// Setting a content configuration replaces the existing contentView of the cell with a new content view instance from the configuration,
382        /// or directly applies the configuration to the existing content view if the configuration is compatible with the existing content view type.
383        /// The default value is nil. After a configuration has been set, setting this property to nil will replace the current content view with a new content view.
384        #[unsafe(method(contentConfiguration))]
385        #[unsafe(method_family = none)]
386        pub unsafe fn contentConfiguration(
387            &self,
388        ) -> Option<Retained<ProtocolObject<dyn UIContentConfiguration>>>;
389
390        #[cfg(feature = "UIContentConfiguration")]
391        /// Setter for [`contentConfiguration`][Self::contentConfiguration].
392        #[unsafe(method(setContentConfiguration:))]
393        #[unsafe(method_family = none)]
394        pub unsafe fn setContentConfiguration(
395            &self,
396            content_configuration: Option<&ProtocolObject<dyn UIContentConfiguration>>,
397        );
398
399        /// When YES, the cell will automatically call -updatedConfigurationForState: on its `contentConfiguration` when the cell's
400        /// configuration state changes, and apply the updated configuration back to the cell. The default value is YES.
401        #[unsafe(method(automaticallyUpdatesContentConfiguration))]
402        #[unsafe(method_family = none)]
403        pub unsafe fn automaticallyUpdatesContentConfiguration(&self) -> bool;
404
405        /// Setter for [`automaticallyUpdatesContentConfiguration`][Self::automaticallyUpdatesContentConfiguration].
406        #[unsafe(method(setAutomaticallyUpdatesContentConfiguration:))]
407        #[unsafe(method_family = none)]
408        pub unsafe fn setAutomaticallyUpdatesContentConfiguration(
409            &self,
410            automatically_updates_content_configuration: bool,
411        );
412
413        #[unsafe(method(contentView))]
414        #[unsafe(method_family = none)]
415        pub unsafe fn contentView(&self) -> Retained<UIView>;
416
417        #[cfg(feature = "UIImageView")]
418        #[deprecated = "Use UIListContentConfiguration instead, this property will be deprecated in a future release."]
419        #[unsafe(method(imageView))]
420        #[unsafe(method_family = none)]
421        pub unsafe fn imageView(&self) -> Option<Retained<UIImageView>>;
422
423        #[cfg(feature = "UILabel")]
424        #[deprecated = "Use UIListContentConfiguration instead, this property will be deprecated in a future release."]
425        #[unsafe(method(textLabel))]
426        #[unsafe(method_family = none)]
427        pub unsafe fn textLabel(&self) -> Option<Retained<UILabel>>;
428
429        #[cfg(feature = "UILabel")]
430        #[deprecated = "Use UIListContentConfiguration instead, this property will be deprecated in a future release."]
431        #[unsafe(method(detailTextLabel))]
432        #[unsafe(method_family = none)]
433        pub unsafe fn detailTextLabel(&self) -> Option<Retained<UILabel>>;
434
435        #[cfg(feature = "UIBackgroundConfiguration")]
436        /// Returns a default background configuration for the cell's style.
437        /// This background configuration represents the default appearance that the cell will use.
438        #[unsafe(method(defaultBackgroundConfiguration))]
439        #[unsafe(method_family = none)]
440        pub unsafe fn defaultBackgroundConfiguration(&self) -> Retained<UIBackgroundConfiguration>;
441
442        #[cfg(feature = "UIBackgroundConfiguration")]
443        /// Setting a background configuration supersedes the cell's backgroundView, selectedBackgroundView, and multipleSelectionBackgroundView. The default value is nil.
444        #[unsafe(method(backgroundConfiguration))]
445        #[unsafe(method_family = none)]
446        pub unsafe fn backgroundConfiguration(&self)
447            -> Option<Retained<UIBackgroundConfiguration>>;
448
449        #[cfg(feature = "UIBackgroundConfiguration")]
450        /// Setter for [`backgroundConfiguration`][Self::backgroundConfiguration].
451        #[unsafe(method(setBackgroundConfiguration:))]
452        #[unsafe(method_family = none)]
453        pub unsafe fn setBackgroundConfiguration(
454            &self,
455            background_configuration: Option<&UIBackgroundConfiguration>,
456        );
457
458        /// When YES, the cell will automatically call -updatedConfigurationForState: on its `backgroundConfiguration` when the cell's
459        /// configuration state changes, and apply the updated configuration back to the cell. The default value is YES.
460        #[unsafe(method(automaticallyUpdatesBackgroundConfiguration))]
461        #[unsafe(method_family = none)]
462        pub unsafe fn automaticallyUpdatesBackgroundConfiguration(&self) -> bool;
463
464        /// Setter for [`automaticallyUpdatesBackgroundConfiguration`][Self::automaticallyUpdatesBackgroundConfiguration].
465        #[unsafe(method(setAutomaticallyUpdatesBackgroundConfiguration:))]
466        #[unsafe(method_family = none)]
467        pub unsafe fn setAutomaticallyUpdatesBackgroundConfiguration(
468            &self,
469            automatically_updates_background_configuration: bool,
470        );
471
472        #[unsafe(method(backgroundView))]
473        #[unsafe(method_family = none)]
474        pub unsafe fn backgroundView(&self) -> Option<Retained<UIView>>;
475
476        /// Setter for [`backgroundView`][Self::backgroundView].
477        #[unsafe(method(setBackgroundView:))]
478        #[unsafe(method_family = none)]
479        pub unsafe fn setBackgroundView(&self, background_view: Option<&UIView>);
480
481        #[unsafe(method(selectedBackgroundView))]
482        #[unsafe(method_family = none)]
483        pub unsafe fn selectedBackgroundView(&self) -> Option<Retained<UIView>>;
484
485        /// Setter for [`selectedBackgroundView`][Self::selectedBackgroundView].
486        #[unsafe(method(setSelectedBackgroundView:))]
487        #[unsafe(method_family = none)]
488        pub unsafe fn setSelectedBackgroundView(&self, selected_background_view: Option<&UIView>);
489
490        #[unsafe(method(multipleSelectionBackgroundView))]
491        #[unsafe(method_family = none)]
492        pub unsafe fn multipleSelectionBackgroundView(&self) -> Option<Retained<UIView>>;
493
494        /// Setter for [`multipleSelectionBackgroundView`][Self::multipleSelectionBackgroundView].
495        #[unsafe(method(setMultipleSelectionBackgroundView:))]
496        #[unsafe(method_family = none)]
497        pub unsafe fn setMultipleSelectionBackgroundView(
498            &self,
499            multiple_selection_background_view: Option<&UIView>,
500        );
501
502        #[unsafe(method(reuseIdentifier))]
503        #[unsafe(method_family = none)]
504        pub unsafe fn reuseIdentifier(&self) -> Option<Retained<NSString>>;
505
506        #[unsafe(method(prepareForReuse))]
507        #[unsafe(method_family = none)]
508        pub unsafe fn prepareForReuse(&self);
509
510        #[unsafe(method(selectionStyle))]
511        #[unsafe(method_family = none)]
512        pub unsafe fn selectionStyle(&self) -> UITableViewCellSelectionStyle;
513
514        /// Setter for [`selectionStyle`][Self::selectionStyle].
515        #[unsafe(method(setSelectionStyle:))]
516        #[unsafe(method_family = none)]
517        pub unsafe fn setSelectionStyle(&self, selection_style: UITableViewCellSelectionStyle);
518
519        #[unsafe(method(isSelected))]
520        #[unsafe(method_family = none)]
521        pub unsafe fn isSelected(&self) -> bool;
522
523        /// Setter for [`isSelected`][Self::isSelected].
524        #[unsafe(method(setSelected:))]
525        #[unsafe(method_family = none)]
526        pub unsafe fn setSelected(&self, selected: bool);
527
528        #[unsafe(method(isHighlighted))]
529        #[unsafe(method_family = none)]
530        pub unsafe fn isHighlighted(&self) -> bool;
531
532        /// Setter for [`isHighlighted`][Self::isHighlighted].
533        #[unsafe(method(setHighlighted:))]
534        #[unsafe(method_family = none)]
535        pub unsafe fn setHighlighted(&self, highlighted: bool);
536
537        #[unsafe(method(setSelected:animated:))]
538        #[unsafe(method_family = none)]
539        pub unsafe fn setSelected_animated(&self, selected: bool, animated: bool);
540
541        #[unsafe(method(setHighlighted:animated:))]
542        #[unsafe(method_family = none)]
543        pub unsafe fn setHighlighted_animated(&self, highlighted: bool, animated: bool);
544
545        #[unsafe(method(editingStyle))]
546        #[unsafe(method_family = none)]
547        pub unsafe fn editingStyle(&self) -> UITableViewCellEditingStyle;
548
549        #[unsafe(method(showsReorderControl))]
550        #[unsafe(method_family = none)]
551        pub unsafe fn showsReorderControl(&self) -> bool;
552
553        /// Setter for [`showsReorderControl`][Self::showsReorderControl].
554        #[unsafe(method(setShowsReorderControl:))]
555        #[unsafe(method_family = none)]
556        pub unsafe fn setShowsReorderControl(&self, shows_reorder_control: bool);
557
558        #[unsafe(method(shouldIndentWhileEditing))]
559        #[unsafe(method_family = none)]
560        pub unsafe fn shouldIndentWhileEditing(&self) -> bool;
561
562        /// Setter for [`shouldIndentWhileEditing`][Self::shouldIndentWhileEditing].
563        #[unsafe(method(setShouldIndentWhileEditing:))]
564        #[unsafe(method_family = none)]
565        pub unsafe fn setShouldIndentWhileEditing(&self, should_indent_while_editing: bool);
566
567        #[unsafe(method(accessoryType))]
568        #[unsafe(method_family = none)]
569        pub unsafe fn accessoryType(&self) -> UITableViewCellAccessoryType;
570
571        /// Setter for [`accessoryType`][Self::accessoryType].
572        #[unsafe(method(setAccessoryType:))]
573        #[unsafe(method_family = none)]
574        pub unsafe fn setAccessoryType(&self, accessory_type: UITableViewCellAccessoryType);
575
576        #[unsafe(method(accessoryView))]
577        #[unsafe(method_family = none)]
578        pub unsafe fn accessoryView(&self) -> Option<Retained<UIView>>;
579
580        /// Setter for [`accessoryView`][Self::accessoryView].
581        #[unsafe(method(setAccessoryView:))]
582        #[unsafe(method_family = none)]
583        pub unsafe fn setAccessoryView(&self, accessory_view: Option<&UIView>);
584
585        #[unsafe(method(editingAccessoryType))]
586        #[unsafe(method_family = none)]
587        pub unsafe fn editingAccessoryType(&self) -> UITableViewCellAccessoryType;
588
589        /// Setter for [`editingAccessoryType`][Self::editingAccessoryType].
590        #[unsafe(method(setEditingAccessoryType:))]
591        #[unsafe(method_family = none)]
592        pub unsafe fn setEditingAccessoryType(
593            &self,
594            editing_accessory_type: UITableViewCellAccessoryType,
595        );
596
597        #[unsafe(method(editingAccessoryView))]
598        #[unsafe(method_family = none)]
599        pub unsafe fn editingAccessoryView(&self) -> Option<Retained<UIView>>;
600
601        /// Setter for [`editingAccessoryView`][Self::editingAccessoryView].
602        #[unsafe(method(setEditingAccessoryView:))]
603        #[unsafe(method_family = none)]
604        pub unsafe fn setEditingAccessoryView(&self, editing_accessory_view: Option<&UIView>);
605
606        #[unsafe(method(indentationLevel))]
607        #[unsafe(method_family = none)]
608        pub unsafe fn indentationLevel(&self) -> NSInteger;
609
610        /// Setter for [`indentationLevel`][Self::indentationLevel].
611        #[unsafe(method(setIndentationLevel:))]
612        #[unsafe(method_family = none)]
613        pub unsafe fn setIndentationLevel(&self, indentation_level: NSInteger);
614
615        #[cfg(feature = "objc2-core-foundation")]
616        #[unsafe(method(indentationWidth))]
617        #[unsafe(method_family = none)]
618        pub unsafe fn indentationWidth(&self) -> CGFloat;
619
620        #[cfg(feature = "objc2-core-foundation")]
621        /// Setter for [`indentationWidth`][Self::indentationWidth].
622        #[unsafe(method(setIndentationWidth:))]
623        #[unsafe(method_family = none)]
624        pub unsafe fn setIndentationWidth(&self, indentation_width: CGFloat);
625
626        #[cfg(all(feature = "UIGeometry", feature = "objc2-core-foundation"))]
627        #[unsafe(method(separatorInset))]
628        #[unsafe(method_family = none)]
629        pub unsafe fn separatorInset(&self) -> UIEdgeInsets;
630
631        #[cfg(all(feature = "UIGeometry", feature = "objc2-core-foundation"))]
632        /// Setter for [`separatorInset`][Self::separatorInset].
633        #[unsafe(method(setSeparatorInset:))]
634        #[unsafe(method_family = none)]
635        pub unsafe fn setSeparatorInset(&self, separator_inset: UIEdgeInsets);
636
637        #[unsafe(method(isEditing))]
638        #[unsafe(method_family = none)]
639        pub unsafe fn isEditing(&self) -> bool;
640
641        /// Setter for [`isEditing`][Self::isEditing].
642        #[unsafe(method(setEditing:))]
643        #[unsafe(method_family = none)]
644        pub unsafe fn setEditing(&self, editing: bool);
645
646        #[unsafe(method(setEditing:animated:))]
647        #[unsafe(method_family = none)]
648        pub unsafe fn setEditing_animated(&self, editing: bool, animated: bool);
649
650        #[unsafe(method(showingDeleteConfirmation))]
651        #[unsafe(method_family = none)]
652        pub unsafe fn showingDeleteConfirmation(&self) -> bool;
653
654        #[unsafe(method(focusStyle))]
655        #[unsafe(method_family = none)]
656        pub unsafe fn focusStyle(&self) -> UITableViewCellFocusStyle;
657
658        /// Setter for [`focusStyle`][Self::focusStyle].
659        #[unsafe(method(setFocusStyle:))]
660        #[unsafe(method_family = none)]
661        pub unsafe fn setFocusStyle(&self, focus_style: UITableViewCellFocusStyle);
662
663        #[unsafe(method(willTransitionToState:))]
664        #[unsafe(method_family = none)]
665        pub unsafe fn willTransitionToState(&self, state: UITableViewCellStateMask);
666
667        #[unsafe(method(didTransitionToState:))]
668        #[unsafe(method_family = none)]
669        pub unsafe fn didTransitionToState(&self, state: UITableViewCellStateMask);
670
671        #[unsafe(method(dragStateDidChange:))]
672        #[unsafe(method_family = none)]
673        pub unsafe fn dragStateDidChange(&self, drag_state: UITableViewCellDragState);
674
675        #[unsafe(method(userInteractionEnabledWhileDragging))]
676        #[unsafe(method_family = none)]
677        pub unsafe fn userInteractionEnabledWhileDragging(&self) -> bool;
678
679        /// Setter for [`userInteractionEnabledWhileDragging`][Self::userInteractionEnabledWhileDragging].
680        #[unsafe(method(setUserInteractionEnabledWhileDragging:))]
681        #[unsafe(method_family = none)]
682        pub unsafe fn setUserInteractionEnabledWhileDragging(
683            &self,
684            user_interaction_enabled_while_dragging: bool,
685        );
686    );
687}
688
689/// Methods declared on superclass `UIView`.
690#[cfg(all(feature = "UIResponder", feature = "UIView"))]
691impl UITableViewCell {
692    extern_methods!(
693        #[cfg(feature = "objc2-core-foundation")]
694        #[unsafe(method(initWithFrame:))]
695        #[unsafe(method_family = init)]
696        pub unsafe fn initWithFrame(this: Allocated<Self>, frame: CGRect) -> Retained<Self>;
697    );
698}
699
700/// Methods declared on superclass `NSObject`.
701#[cfg(all(feature = "UIResponder", feature = "UIView"))]
702impl UITableViewCell {
703    extern_methods!(
704        #[unsafe(method(init))]
705        #[unsafe(method_family = init)]
706        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
707
708        #[unsafe(method(new))]
709        #[unsafe(method_family = new)]
710        pub unsafe fn new(mtm: MainThreadMarker) -> Retained<Self>;
711    );
712}
713
714/// UIDeprecated.
715#[cfg(all(feature = "UIResponder", feature = "UIView"))]
716impl UITableViewCell {
717    extern_methods!(
718        #[cfg(feature = "objc2-core-foundation")]
719        #[deprecated]
720        #[unsafe(method(initWithFrame:reuseIdentifier:))]
721        #[unsafe(method_family = init)]
722        pub unsafe fn initWithFrame_reuseIdentifier(
723            this: Allocated<Self>,
724            frame: CGRect,
725            reuse_identifier: Option<&NSString>,
726        ) -> Retained<Self>;
727
728        #[deprecated]
729        #[unsafe(method(text))]
730        #[unsafe(method_family = none)]
731        pub unsafe fn text(&self) -> Option<Retained<NSString>>;
732
733        /// Setter for [`text`][Self::text].
734        #[deprecated]
735        #[unsafe(method(setText:))]
736        #[unsafe(method_family = none)]
737        pub unsafe fn setText(&self, text: Option<&NSString>);
738
739        #[cfg(feature = "UIFont")]
740        #[deprecated]
741        #[unsafe(method(font))]
742        #[unsafe(method_family = none)]
743        pub unsafe fn font(&self) -> Option<Retained<UIFont>>;
744
745        #[cfg(feature = "UIFont")]
746        /// Setter for [`font`][Self::font].
747        #[deprecated]
748        #[unsafe(method(setFont:))]
749        #[unsafe(method_family = none)]
750        pub unsafe fn setFont(&self, font: Option<&UIFont>);
751
752        #[cfg(feature = "NSText")]
753        #[deprecated]
754        #[unsafe(method(textAlignment))]
755        #[unsafe(method_family = none)]
756        pub unsafe fn textAlignment(&self) -> NSTextAlignment;
757
758        #[cfg(feature = "NSText")]
759        /// Setter for [`textAlignment`][Self::textAlignment].
760        #[deprecated]
761        #[unsafe(method(setTextAlignment:))]
762        #[unsafe(method_family = none)]
763        pub unsafe fn setTextAlignment(&self, text_alignment: NSTextAlignment);
764
765        #[cfg(feature = "NSParagraphStyle")]
766        #[deprecated]
767        #[unsafe(method(lineBreakMode))]
768        #[unsafe(method_family = none)]
769        pub unsafe fn lineBreakMode(&self) -> NSLineBreakMode;
770
771        #[cfg(feature = "NSParagraphStyle")]
772        /// Setter for [`lineBreakMode`][Self::lineBreakMode].
773        #[deprecated]
774        #[unsafe(method(setLineBreakMode:))]
775        #[unsafe(method_family = none)]
776        pub unsafe fn setLineBreakMode(&self, line_break_mode: NSLineBreakMode);
777
778        #[cfg(feature = "UIColor")]
779        #[deprecated]
780        #[unsafe(method(textColor))]
781        #[unsafe(method_family = none)]
782        pub unsafe fn textColor(&self) -> Option<Retained<UIColor>>;
783
784        #[cfg(feature = "UIColor")]
785        /// Setter for [`textColor`][Self::textColor].
786        #[deprecated]
787        #[unsafe(method(setTextColor:))]
788        #[unsafe(method_family = none)]
789        pub unsafe fn setTextColor(&self, text_color: Option<&UIColor>);
790
791        #[cfg(feature = "UIColor")]
792        #[deprecated]
793        #[unsafe(method(selectedTextColor))]
794        #[unsafe(method_family = none)]
795        pub unsafe fn selectedTextColor(&self) -> Option<Retained<UIColor>>;
796
797        #[cfg(feature = "UIColor")]
798        /// Setter for [`selectedTextColor`][Self::selectedTextColor].
799        #[deprecated]
800        #[unsafe(method(setSelectedTextColor:))]
801        #[unsafe(method_family = none)]
802        pub unsafe fn setSelectedTextColor(&self, selected_text_color: Option<&UIColor>);
803
804        #[cfg(feature = "UIImage")]
805        #[deprecated]
806        #[unsafe(method(image))]
807        #[unsafe(method_family = none)]
808        pub unsafe fn image(&self) -> Option<Retained<UIImage>>;
809
810        #[cfg(feature = "UIImage")]
811        /// Setter for [`image`][Self::image].
812        #[deprecated]
813        #[unsafe(method(setImage:))]
814        #[unsafe(method_family = none)]
815        pub unsafe fn setImage(&self, image: Option<&UIImage>);
816
817        #[cfg(feature = "UIImage")]
818        #[deprecated]
819        #[unsafe(method(selectedImage))]
820        #[unsafe(method_family = none)]
821        pub unsafe fn selectedImage(&self) -> Option<Retained<UIImage>>;
822
823        #[cfg(feature = "UIImage")]
824        /// Setter for [`selectedImage`][Self::selectedImage].
825        #[deprecated]
826        #[unsafe(method(setSelectedImage:))]
827        #[unsafe(method_family = none)]
828        pub unsafe fn setSelectedImage(&self, selected_image: Option<&UIImage>);
829
830        #[deprecated]
831        #[unsafe(method(hidesAccessoryWhenEditing))]
832        #[unsafe(method_family = none)]
833        pub unsafe fn hidesAccessoryWhenEditing(&self) -> bool;
834
835        /// Setter for [`hidesAccessoryWhenEditing`][Self::hidesAccessoryWhenEditing].
836        #[deprecated]
837        #[unsafe(method(setHidesAccessoryWhenEditing:))]
838        #[unsafe(method_family = none)]
839        pub unsafe fn setHidesAccessoryWhenEditing(&self, hides_accessory_when_editing: bool);
840
841        #[deprecated]
842        #[unsafe(method(target))]
843        #[unsafe(method_family = none)]
844        pub unsafe fn target(&self) -> Option<Retained<AnyObject>>;
845
846        /// Setter for [`target`][Self::target].
847        #[deprecated]
848        #[unsafe(method(setTarget:))]
849        #[unsafe(method_family = none)]
850        pub unsafe fn setTarget(&self, target: Option<&AnyObject>);
851
852        #[deprecated]
853        #[unsafe(method(editAction))]
854        #[unsafe(method_family = none)]
855        pub unsafe fn editAction(&self) -> Option<Sel>;
856
857        /// Setter for [`editAction`][Self::editAction].
858        #[deprecated]
859        #[unsafe(method(setEditAction:))]
860        #[unsafe(method_family = none)]
861        pub unsafe fn setEditAction(&self, edit_action: Option<Sel>);
862
863        #[deprecated]
864        #[unsafe(method(accessoryAction))]
865        #[unsafe(method_family = none)]
866        pub unsafe fn accessoryAction(&self) -> Option<Sel>;
867
868        /// Setter for [`accessoryAction`][Self::accessoryAction].
869        #[deprecated]
870        #[unsafe(method(setAccessoryAction:))]
871        #[unsafe(method_family = none)]
872        pub unsafe fn setAccessoryAction(&self, accessory_action: Option<Sel>);
873    );
874}