1#[derive(Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash, Debug)]
7#[allow(missing_docs)]
8pub enum NoteTagShape {
9 NoIcon,
10 GreenCheckBox,
11 YellowCheckBox,
12 BlueCheckBox,
13 GreenStarCheckBox,
14 YellowStarCheckBox,
15 BlueStarCheckBox,
16 GreenExclamationCheckBox,
17 YellowExclamationCheckBox,
18 BlueExclamationCheckBox,
19 GreenRightArrowCheckBox,
20 YellowRightArrowCheckBox,
21 BlueRightArrowCheckBox,
22 YellowStar,
23 BlueFollowUpFlag,
24 QuestionMark,
25 BlueRightArrow,
26 HighPriority,
27 ContactInformation,
28 Meeting,
29 TimeSensitive,
30 LightBulb,
31 Pushpin,
32 Home,
33 CommentBubble,
34 SmilingFace,
35 AwardRibbon,
36 YellowKey,
37 BlueCheckBox1,
38 BlueCircle1,
39 BlueCheckBox2,
40 BlueCircle2,
41 BlueCheckBox3,
42 BlueCircle3,
43 BlueEightPointStar,
44 BlueCheckMark,
45 BlueCircle,
46 BlueDownArrow,
47 BlueLeftArrow,
48 BlueSolidTarget,
49 BlueStar,
50 BlueSun,
51 BlueTarget,
52 BlueTriangle,
53 BlueUmbrella,
54 BlueUpArrow,
55 BlueXWithDots,
56 BlueX,
57 GreenCheckBox1,
58 GreenCircle1,
59 GreenCheckBox2,
60 GreenCircle2,
61 GreenCheckBox3,
62 GreenCircle3,
63 GreenEightPointStar,
64 GreenCheckMark,
65 GreenCircle,
66 GreenDownArrow,
67 GreenLeftArrow,
68 GreenRightArrow,
69 GreenSolidArrow,
70 GreenStar,
71 GreenSun,
72 GreenTarget,
73 GreenTriangle,
74 GreenUmbrella,
75 GreenUpArrow,
76 GreenXWithDots,
77 GreenX,
78 YellowCheckBox1,
79 YellowCircle1,
80 YellowCheckBox2,
81 YellowCircle2,
82 YellowCheckBox3,
83 YellowCircle3,
84 YellowEightPointStar,
85 YellowCheckMark,
86 YellowCircle,
87 YellowDownArrow,
88 YellowLeftArrow,
89 YellowRightArrow,
90 YellowSolidTarget,
91 YellowSun,
92 YellowTarget,
93 YellowTriangle,
94 YellowUmbrella,
95 YellowUpArrow,
96 YellowXWithDots,
97 YellowX,
98 FollowUpTodayFlag,
99 FollowUpTomorrowFlag,
100 FollowUpThisWeekFlag,
101 FollowUpNextWeekFlag,
102 NoFollowUpDateFlag,
103 BluePersonCheckBox,
104 YellowPersonCheckBox,
105 GreenPersonCheckBox,
106 BlueFlagCheckBox,
107 RedFlagCheckBox,
108 GreenFlagCheckBox,
109 RedSquare,
110 YellowSquare,
111 BlueSquare,
112 GreenSquare,
113 OrangeSquare,
114 PinkSquare,
115 EMailMessage,
116 ClosedEnvelope,
117 OpenEnvelope,
118 MobilePhone,
119 TelephoneWithClock,
120 QuestionBalloon,
121 PaperClip,
122 FrowningFace,
123 InstantMessagingContactPerson,
124 PersonWithExclamationMark,
125 TwoPeople,
126 ReminderBell,
127 Contact,
128 RoseOnAStem,
129 CalendarDateWithClock,
130 MusicalNote,
131 MovieClip,
132 QuotationMark,
133 Globe,
134 HyperlinkGlobe,
135 Laptop,
136 Plane,
137 Car,
138 Binoculars,
139 PresentationSlide,
140 Padlock,
141 OpenBook,
142 NotebookWithClock,
143 BlankPaperWithLines,
144 Research,
145 Pen,
146 DollarSign,
147 CoinsWithAWindowBackdrop,
148 ScheduledTask,
149 LightningBolt,
150 Cloud,
151 Heart,
152 Sunflower,
153}
154
155impl NoteTagShape {
156 pub(crate) fn parse(value: u16) -> NoteTagShape {
157 match value {
158 0 => NoteTagShape::NoIcon,
159 1 => NoteTagShape::GreenCheckBox,
160 2 => NoteTagShape::YellowCheckBox,
161 3 => NoteTagShape::BlueCheckBox,
162 4 => NoteTagShape::GreenStarCheckBox,
163 5 => NoteTagShape::YellowStarCheckBox,
164 6 => NoteTagShape::BlueStarCheckBox,
165 7 => NoteTagShape::GreenExclamationCheckBox,
166 8 => NoteTagShape::YellowExclamationCheckBox,
167 9 => NoteTagShape::BlueExclamationCheckBox,
168 10 => NoteTagShape::GreenRightArrowCheckBox,
169 11 => NoteTagShape::YellowRightArrowCheckBox,
170 12 => NoteTagShape::BlueRightArrowCheckBox,
171 13 => NoteTagShape::YellowStar,
172 14 => NoteTagShape::BlueFollowUpFlag,
173 15 => NoteTagShape::QuestionMark,
174 16 => NoteTagShape::BlueRightArrow,
175 17 => NoteTagShape::HighPriority,
176 18 => NoteTagShape::ContactInformation,
177 19 => NoteTagShape::Meeting,
178 20 => NoteTagShape::TimeSensitive,
179 21 => NoteTagShape::LightBulb,
180 22 => NoteTagShape::Pushpin,
181 23 => NoteTagShape::Home,
182 24 => NoteTagShape::CommentBubble,
183 25 => NoteTagShape::SmilingFace,
184 26 => NoteTagShape::AwardRibbon,
185 27 => NoteTagShape::YellowKey,
186 28 => NoteTagShape::BlueCheckBox1,
187 29 => NoteTagShape::BlueCircle1,
188 30 => NoteTagShape::BlueCheckBox2,
189 31 => NoteTagShape::BlueCircle2,
190 32 => NoteTagShape::BlueCheckBox3,
191 33 => NoteTagShape::BlueCircle3,
192 34 => NoteTagShape::BlueEightPointStar,
193 35 => NoteTagShape::BlueCheckMark,
194 36 => NoteTagShape::BlueCircle,
195 37 => NoteTagShape::BlueDownArrow,
196 38 => NoteTagShape::BlueLeftArrow,
197 39 => NoteTagShape::BlueSolidTarget,
198 40 => NoteTagShape::BlueStar,
199 41 => NoteTagShape::BlueSun,
200 42 => NoteTagShape::BlueTarget,
201 43 => NoteTagShape::BlueTriangle,
202 44 => NoteTagShape::BlueUmbrella,
203 45 => NoteTagShape::BlueUpArrow,
204 46 => NoteTagShape::BlueXWithDots,
205 47 => NoteTagShape::BlueX,
206 48 => NoteTagShape::GreenCheckBox1,
207 49 => NoteTagShape::GreenCircle1,
208 50 => NoteTagShape::GreenCheckBox2,
209 51 => NoteTagShape::GreenCircle2,
210 52 => NoteTagShape::GreenCheckBox3,
211 53 => NoteTagShape::GreenCircle3,
212 54 => NoteTagShape::GreenEightPointStar,
213 55 => NoteTagShape::GreenCheckMark,
214 56 => NoteTagShape::GreenCircle,
215 57 => NoteTagShape::GreenDownArrow,
216 58 => NoteTagShape::GreenLeftArrow,
217 59 => NoteTagShape::GreenRightArrow,
218 60 => NoteTagShape::GreenSolidArrow,
219 61 => NoteTagShape::GreenStar,
220 62 => NoteTagShape::GreenSun,
221 63 => NoteTagShape::GreenTarget,
222 64 => NoteTagShape::GreenTriangle,
223 65 => NoteTagShape::GreenUmbrella,
224 66 => NoteTagShape::GreenUpArrow,
225 67 => NoteTagShape::GreenXWithDots,
226 68 => NoteTagShape::GreenX,
227 69 => NoteTagShape::YellowCheckBox1,
228 70 => NoteTagShape::YellowCircle1,
229 71 => NoteTagShape::YellowCheckBox2,
230 72 => NoteTagShape::YellowCircle2,
231 73 => NoteTagShape::YellowCheckBox3,
232 74 => NoteTagShape::YellowCircle3,
233 75 => NoteTagShape::YellowEightPointStar,
234 76 => NoteTagShape::YellowCheckMark,
235 77 => NoteTagShape::YellowCircle,
236 78 => NoteTagShape::YellowDownArrow,
237 79 => NoteTagShape::YellowLeftArrow,
238 80 => NoteTagShape::YellowRightArrow,
239 81 => NoteTagShape::YellowSolidTarget,
240 82 => NoteTagShape::YellowSun,
241 83 => NoteTagShape::YellowTarget,
242 84 => NoteTagShape::YellowTriangle,
243 85 => NoteTagShape::YellowUmbrella,
244 86 => NoteTagShape::YellowUpArrow,
245 87 => NoteTagShape::YellowXWithDots,
246 88 => NoteTagShape::YellowX,
247 89 => NoteTagShape::FollowUpTodayFlag,
248 90 => NoteTagShape::FollowUpTomorrowFlag,
249 91 => NoteTagShape::FollowUpThisWeekFlag,
250 92 => NoteTagShape::FollowUpNextWeekFlag,
251 93 => NoteTagShape::NoFollowUpDateFlag,
252 94 => NoteTagShape::BluePersonCheckBox,
253 95 => NoteTagShape::YellowPersonCheckBox,
254 96 => NoteTagShape::GreenPersonCheckBox,
255 97 => NoteTagShape::BlueFlagCheckBox,
256 98 => NoteTagShape::RedFlagCheckBox,
257 99 => NoteTagShape::GreenFlagCheckBox,
258 100 => NoteTagShape::RedSquare,
259 101 => NoteTagShape::YellowSquare,
260 102 => NoteTagShape::BlueSquare,
261 103 => NoteTagShape::GreenSquare,
262 104 => NoteTagShape::OrangeSquare,
263 105 => NoteTagShape::PinkSquare,
264 106 => NoteTagShape::EMailMessage,
265 107 => NoteTagShape::ClosedEnvelope,
266 108 => NoteTagShape::OpenEnvelope,
267 109 => NoteTagShape::MobilePhone,
268 110 => NoteTagShape::TelephoneWithClock,
269 111 => NoteTagShape::QuestionBalloon,
270 112 => NoteTagShape::PaperClip,
271 113 => NoteTagShape::FrowningFace,
272 114 => NoteTagShape::InstantMessagingContactPerson,
273 115 => NoteTagShape::PersonWithExclamationMark,
274 116 => NoteTagShape::TwoPeople,
275 117 => NoteTagShape::ReminderBell,
276 118 => NoteTagShape::Contact,
277 119 => NoteTagShape::RoseOnAStem,
278 120 => NoteTagShape::CalendarDateWithClock,
279 121 => NoteTagShape::MusicalNote,
280 122 => NoteTagShape::MovieClip,
281 123 => NoteTagShape::QuotationMark,
282 124 => NoteTagShape::Globe,
283 125 => NoteTagShape::HyperlinkGlobe,
284 126 => NoteTagShape::Laptop,
285 127 => NoteTagShape::Plane,
286 128 => NoteTagShape::Car,
287 129 => NoteTagShape::Binoculars,
288 130 => NoteTagShape::PresentationSlide,
289 131 => NoteTagShape::Padlock,
290 132 => NoteTagShape::OpenBook,
291 133 => NoteTagShape::NotebookWithClock,
292 134 => NoteTagShape::BlankPaperWithLines,
293 135 => NoteTagShape::Research,
294 136 => NoteTagShape::Pen,
295 137 => NoteTagShape::DollarSign,
296 138 => NoteTagShape::CoinsWithAWindowBackdrop,
297 139 => NoteTagShape::ScheduledTask,
298 140 => NoteTagShape::LightningBolt,
299 141 => NoteTagShape::Cloud,
300 142 => NoteTagShape::Heart,
301 143 => NoteTagShape::Sunflower,
302 _ => panic!("invalid note tag shape: {}", value),
303 }
304 }
305
306 pub fn is_checkable(&self) -> bool {
308 matches!(
309 self,
310 NoteTagShape::GreenCheckBox
311 | NoteTagShape::YellowCheckBox
312 | NoteTagShape::BlueCheckBox
313 | NoteTagShape::GreenStarCheckBox
314 | NoteTagShape::YellowStarCheckBox
315 | NoteTagShape::BlueStarCheckBox
316 | NoteTagShape::GreenExclamationCheckBox
317 | NoteTagShape::YellowExclamationCheckBox
318 | NoteTagShape::BlueExclamationCheckBox
319 | NoteTagShape::GreenRightArrowCheckBox
320 | NoteTagShape::YellowRightArrowCheckBox
321 | NoteTagShape::BlueRightArrowCheckBox
322 | NoteTagShape::BlueCheckBox1
323 | NoteTagShape::BlueCheckBox2
324 | NoteTagShape::BlueCheckBox3
325 | NoteTagShape::GreenCheckBox1
326 | NoteTagShape::GreenCheckBox2
327 | NoteTagShape::GreenCheckBox3
328 | NoteTagShape::YellowCheckBox1
329 | NoteTagShape::YellowCheckBox2
330 | NoteTagShape::YellowCheckBox3
331 | NoteTagShape::FollowUpTodayFlag
332 | NoteTagShape::FollowUpTomorrowFlag
333 | NoteTagShape::FollowUpThisWeekFlag
334 | NoteTagShape::FollowUpNextWeekFlag
335 | NoteTagShape::NoFollowUpDateFlag
336 | NoteTagShape::BluePersonCheckBox
337 | NoteTagShape::YellowPersonCheckBox
338 | NoteTagShape::GreenPersonCheckBox
339 | NoteTagShape::BlueFlagCheckBox
340 | NoteTagShape::RedFlagCheckBox
341 | NoteTagShape::GreenFlagCheckBox
342 )
343 }
344}