objc2_mail_kit/generated/
MEMessageAction.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/mailkit/memessageactionmessagecolor?language=objc)
10// NS_ENUM
11#[repr(transparent)]
12#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
13pub struct MEMessageActionMessageColor(pub NSInteger);
14impl MEMessageActionMessageColor {
15    #[doc(alias = "MEMessageActionMessageColorNone")]
16    pub const None: Self = Self(0);
17    #[doc(alias = "MEMessageActionMessageColorGreen")]
18    pub const Green: Self = Self(1);
19    #[doc(alias = "MEMessageActionMessageColorYellow")]
20    pub const Yellow: Self = Self(2);
21    #[doc(alias = "MEMessageActionMessageColorOrange")]
22    pub const Orange: Self = Self(3);
23    #[doc(alias = "MEMessageActionMessageColorRed")]
24    pub const Red: Self = Self(4);
25    #[doc(alias = "MEMessageActionMessageColorPurple")]
26    pub const Purple: Self = Self(5);
27    #[doc(alias = "MEMessageActionMessageColorBlue")]
28    pub const Blue: Self = Self(6);
29    #[doc(alias = "MEMessageActionMessageColorGray")]
30    pub const Gray: Self = Self(7);
31}
32
33unsafe impl Encode for MEMessageActionMessageColor {
34    const ENCODING: Encoding = NSInteger::ENCODING;
35}
36
37unsafe impl RefEncode for MEMessageActionMessageColor {
38    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
39}
40
41/// [Apple's documentation](https://developer.apple.com/documentation/mailkit/memessageactionflag?language=objc)
42// NS_ENUM
43#[repr(transparent)]
44#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
45pub struct MEMessageActionFlag(pub NSInteger);
46impl MEMessageActionFlag {
47    #[doc(alias = "MEMessageActionFlagNone")]
48    pub const None: Self = Self(0);
49    #[doc(alias = "MEMessageActionFlagDefaultColor")]
50    pub const DefaultColor: Self = Self(1);
51    #[doc(alias = "MEMessageActionFlagRed")]
52    pub const Red: Self = Self(2);
53    #[doc(alias = "MEMessageActionFlagOrange")]
54    pub const Orange: Self = Self(3);
55    #[doc(alias = "MEMessageActionFlagYellow")]
56    pub const Yellow: Self = Self(4);
57    #[doc(alias = "MEMessageActionFlagGreen")]
58    pub const Green: Self = Self(5);
59    #[doc(alias = "MEMessageActionFlagBlue")]
60    pub const Blue: Self = Self(6);
61    #[doc(alias = "MEMessageActionFlagPurple")]
62    pub const Purple: Self = Self(7);
63    #[doc(alias = "MEMessageActionFlagGray")]
64    pub const Gray: Self = Self(8);
65}
66
67unsafe impl Encode for MEMessageActionFlag {
68    const ENCODING: Encoding = NSInteger::ENCODING;
69}
70
71unsafe impl RefEncode for MEMessageActionFlag {
72    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
73}
74
75extern_class!(
76    /// An action that can be performed on a mail message.
77    ///
78    /// See also [Apple's documentation](https://developer.apple.com/documentation/mailkit/memessageaction?language=objc)
79    #[unsafe(super(NSObject))]
80    #[derive(Debug, PartialEq, Eq, Hash)]
81    pub struct MEMessageAction;
82);
83
84extern_conformance!(
85    unsafe impl NSCoding for MEMessageAction {}
86);
87
88extern_conformance!(
89    unsafe impl NSObjectProtocol for MEMessageAction {}
90);
91
92extern_conformance!(
93    unsafe impl NSSecureCoding for MEMessageAction {}
94);
95
96impl MEMessageAction {
97    extern_methods!(
98        /// Moves the mail message to the user's trash mailbox for the account.
99        #[unsafe(method(moveToTrashAction))]
100        #[unsafe(method_family = none)]
101        pub unsafe fn moveToTrashAction() -> Retained<MEMessageAction>;
102
103        /// Moves the mail message to the user's archive mailbox for the account.
104        #[unsafe(method(moveToArchiveAction))]
105        #[unsafe(method_family = none)]
106        pub unsafe fn moveToArchiveAction() -> Retained<MEMessageAction>;
107
108        /// Moves the mail message to the user's junk mailbox for the account.
109        #[unsafe(method(moveToJunkAction))]
110        #[unsafe(method_family = none)]
111        pub unsafe fn moveToJunkAction() -> Retained<MEMessageAction>;
112
113        /// Marks the mail message as read.
114        #[unsafe(method(markAsReadAction))]
115        #[unsafe(method_family = none)]
116        pub unsafe fn markAsReadAction() -> Retained<MEMessageAction>;
117
118        /// Marks the mail  message as unread.
119        #[unsafe(method(markAsUnreadAction))]
120        #[unsafe(method_family = none)]
121        pub unsafe fn markAsUnreadAction() -> Retained<MEMessageAction>;
122
123        /// Marks the message as flagged with the provided color.
124        #[unsafe(method(flagActionWithFlag:))]
125        #[unsafe(method_family = none)]
126        pub unsafe fn flagActionWithFlag(flag: MEMessageActionFlag) -> Retained<Self>;
127
128        /// Adds a color to the message when shown in the message list.
129        #[unsafe(method(setBackgroundColorActionWithColor:))]
130        #[unsafe(method_family = none)]
131        pub unsafe fn setBackgroundColorActionWithColor(
132            color: MEMessageActionMessageColor,
133        ) -> Retained<Self>;
134
135        #[unsafe(method(init))]
136        #[unsafe(method_family = init)]
137        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
138
139        #[unsafe(method(new))]
140        #[unsafe(method_family = new)]
141        pub unsafe fn new() -> Retained<Self>;
142    );
143}