use super::templates;
#[repr(u8)]
#[derive(Copy, Clone, PartialEq, Eq, Debug, Hash)]
pub(crate) enum AppCUITrait {
Deref = 0,
Control = 1,
DesktopControl = 2,
WindowControl = 3,
NotWindow = 4,
NotModalWindow = 5,
NotDesktop = 6,
OnWindowRegistered = 7,
ModalWindowMethods = 8,
OnPaint = 9,
OnKeyPressed = 10,
OnMouseEvent = 11,
OnDefaultAction = 12,
OnResize = 13,
OnFocus = 14,
OnExpand = 15,
OnSiblingSelected = 16,
OnThemeChanged = 17,
ButtonEvents = 18,
CheckBoxEvents = 19,
WindowEvents = 20,
CommandBarEvents = 21,
MenuEvents = 22,
DesktopEvents = 23,
ToolBarEvents = 24,
ColorPickerEvents = 25,
ThreeStateBoxEvents = 26,
RadioBoxEvents = 27,
PasswordEvents = 28,
KeySelectorEvents = 29,
TextFieldEvents = 30,
CustomEvents = 31,
GenericSelectorEvents = 32,
ComboBoxEvents = 33,
GenericDropDownListEvents = 34,
GenericNumericSelectorEvents = 35,
DatePickerEvents = 36,
ListBoxEvents = 37,
GenericListViewEvents = 38,
ToggleButtonEvents = 39,
PathFinderEvents = 40,
TimerEvents = 41,
GenericTreeViewEvents = 42,
MarkdownEvents = 43,
GenericBackgroundTaskEvents = 44,
AccordionEvents = 45,
}
#[repr(u8)]
#[derive(Copy, Clone, PartialEq, Eq)]
pub(crate) enum TraitType {
RawEvent,
ControlEvent,
Other,
}
impl AppCUITrait {
pub(crate) fn name(&self) -> &'static str {
match self {
AppCUITrait::Deref => "Deref",
AppCUITrait::Control => "Control",
AppCUITrait::DesktopControl => "DesktopControl",
AppCUITrait::WindowControl => "WindowControl",
AppCUITrait::NotDesktop => "NotDesktop",
AppCUITrait::NotWindow => "NotWindow",
AppCUITrait::NotModalWindow => "NotModalWindw",
AppCUITrait::OnWindowRegistered => "OnWindowRegistered",
AppCUITrait::ModalWindowMethods => "ModalWindowMethods",
AppCUITrait::OnPaint => "OnPaint",
AppCUITrait::OnKeyPressed => "OnKeyPressed",
AppCUITrait::OnMouseEvent => "OnMouseEvent",
AppCUITrait::OnDefaultAction => "OnDefaultAction",
AppCUITrait::OnResize => "OnResize",
AppCUITrait::OnFocus => "OnFocus",
AppCUITrait::OnExpand => "OnExpand",
AppCUITrait::OnSiblingSelected => "OnSiblingSelected",
AppCUITrait::OnThemeChanged => "OnThemeChanged",
AppCUITrait::ButtonEvents => "ButtonEvents",
AppCUITrait::CheckBoxEvents => "CheckBoxEvents",
AppCUITrait::WindowEvents => "WindowEvents",
AppCUITrait::CommandBarEvents => "CommandBarEvents",
AppCUITrait::MenuEvents => "MenuEvents",
AppCUITrait::DesktopEvents => "DesktopEvents",
AppCUITrait::ToolBarEvents => "ToolBarEvents",
AppCUITrait::ColorPickerEvents => "ColorPickerEvents",
AppCUITrait::ThreeStateBoxEvents => "ThreeStateBoxEvents",
AppCUITrait::RadioBoxEvents => "RadioBoxEvents",
AppCUITrait::PasswordEvents => "PasswordEvents",
AppCUITrait::KeySelectorEvents => "KeySelectorEvents",
AppCUITrait::TextFieldEvents => "TextFieldEvents",
AppCUITrait::CustomEvents => "CustomEvents",
AppCUITrait::GenericSelectorEvents => "SelectorEvents", AppCUITrait::ComboBoxEvents => "ComboBoxEvents",
AppCUITrait::GenericDropDownListEvents => "DropDownListEvents", AppCUITrait::GenericNumericSelectorEvents => "NumericSelectorEvents", AppCUITrait::DatePickerEvents => "DatePickerEvents",
AppCUITrait::ListBoxEvents => "ListBoxEvents",
AppCUITrait::GenericListViewEvents => "ListViewEvents", AppCUITrait::ToggleButtonEvents => "ToggleButtonEvents",
AppCUITrait::PathFinderEvents => "PathFinderEvents",
AppCUITrait::TimerEvents => "TimerEvents",
AppCUITrait::GenericTreeViewEvents => "TreeViewEvents", AppCUITrait::MarkdownEvents => "MarkdownEvents",
AppCUITrait::GenericBackgroundTaskEvents => "BackgroundTaskEvents", AppCUITrait::AccordionEvents => "AccordionEvents",
}
}
pub(crate) fn trait_type(&self) -> TraitType {
match self {
AppCUITrait::Deref => TraitType::Other,
AppCUITrait::Control => TraitType::Other,
AppCUITrait::DesktopControl => TraitType::Other,
AppCUITrait::WindowControl => TraitType::Other,
AppCUITrait::NotDesktop => TraitType::Other,
AppCUITrait::NotWindow => TraitType::Other,
AppCUITrait::NotModalWindow => TraitType::Other,
AppCUITrait::OnWindowRegistered => TraitType::Other,
AppCUITrait::ModalWindowMethods => TraitType::Other,
AppCUITrait::OnPaint => TraitType::RawEvent,
AppCUITrait::OnKeyPressed => TraitType::RawEvent,
AppCUITrait::OnMouseEvent => TraitType::RawEvent,
AppCUITrait::OnDefaultAction => TraitType::RawEvent,
AppCUITrait::OnResize => TraitType::RawEvent,
AppCUITrait::OnFocus => TraitType::RawEvent,
AppCUITrait::OnExpand => TraitType::RawEvent,
AppCUITrait::OnSiblingSelected => TraitType::RawEvent,
AppCUITrait::OnThemeChanged => TraitType::RawEvent,
AppCUITrait::ButtonEvents => TraitType::ControlEvent,
AppCUITrait::CheckBoxEvents => TraitType::ControlEvent,
AppCUITrait::WindowEvents => TraitType::ControlEvent,
AppCUITrait::CommandBarEvents => TraitType::ControlEvent,
AppCUITrait::MenuEvents => TraitType::ControlEvent,
AppCUITrait::DesktopEvents => TraitType::ControlEvent,
AppCUITrait::ToolBarEvents => TraitType::ControlEvent,
AppCUITrait::ColorPickerEvents => TraitType::ControlEvent,
AppCUITrait::ThreeStateBoxEvents => TraitType::ControlEvent,
AppCUITrait::RadioBoxEvents => TraitType::ControlEvent,
AppCUITrait::PasswordEvents => TraitType::ControlEvent,
AppCUITrait::KeySelectorEvents => TraitType::ControlEvent,
AppCUITrait::TextFieldEvents => TraitType::ControlEvent,
AppCUITrait::CustomEvents => TraitType::ControlEvent,
AppCUITrait::GenericSelectorEvents => TraitType::ControlEvent,
AppCUITrait::ComboBoxEvents => TraitType::ControlEvent,
AppCUITrait::GenericDropDownListEvents => TraitType::ControlEvent,
AppCUITrait::GenericNumericSelectorEvents => TraitType::ControlEvent,
AppCUITrait::DatePickerEvents => TraitType::ControlEvent,
AppCUITrait::ListBoxEvents => TraitType::ControlEvent,
AppCUITrait::GenericListViewEvents => TraitType::ControlEvent,
AppCUITrait::ToggleButtonEvents => TraitType::ControlEvent,
AppCUITrait::PathFinderEvents => TraitType::ControlEvent,
AppCUITrait::TimerEvents => TraitType::ControlEvent,
AppCUITrait::GenericTreeViewEvents => TraitType::ControlEvent,
AppCUITrait::MarkdownEvents => TraitType::ControlEvent,
AppCUITrait::GenericBackgroundTaskEvents => TraitType::ControlEvent,
AppCUITrait::AccordionEvents => TraitType::ControlEvent,
}
}
pub(crate) fn basefallback_implementation(&self) -> &'static str {
match self {
AppCUITrait::Deref => templates::DEREF_TRAIT,
AppCUITrait::Control => "",
AppCUITrait::DesktopControl => "",
AppCUITrait::WindowControl => "",
AppCUITrait::NotDesktop => "",
AppCUITrait::NotWindow => "",
AppCUITrait::NotModalWindow => "",
AppCUITrait::ModalWindowMethods => templates::MODAL_WINDOW_METHODS,
AppCUITrait::OnWindowRegistered => templates::ON_WINDOW_REGISTERED_TRAIT,
AppCUITrait::OnPaint => templates::ON_PAINT_TRAIT,
AppCUITrait::OnKeyPressed => templates::ON_KEY_PRESSED_TRAIT,
AppCUITrait::OnMouseEvent => templates::ON_MOUSE_EVENT_TRAIT,
AppCUITrait::OnDefaultAction => templates::ON_DEFAULT_ACTION_TRAIT,
AppCUITrait::OnResize => templates::ON_RESIZE_TRAIT,
AppCUITrait::OnFocus => templates::ON_FOCUS_TRAIT,
AppCUITrait::OnExpand => templates::ON_EXPAND_TRAIT,
AppCUITrait::OnSiblingSelected => templates::ON_SIBLING_SELECTED,
AppCUITrait::OnThemeChanged => templates::ON_THEME_CHANGED_TRAIT,
AppCUITrait::ButtonEvents => "",
AppCUITrait::CheckBoxEvents => "",
AppCUITrait::WindowEvents => "",
AppCUITrait::CommandBarEvents => "",
AppCUITrait::MenuEvents => "",
AppCUITrait::DesktopEvents => "",
AppCUITrait::ToolBarEvents => "",
AppCUITrait::ColorPickerEvents => "",
AppCUITrait::ThreeStateBoxEvents => "",
AppCUITrait::RadioBoxEvents => "",
AppCUITrait::PasswordEvents => "",
AppCUITrait::KeySelectorEvents => "",
AppCUITrait::TextFieldEvents => "",
AppCUITrait::CustomEvents => "",
AppCUITrait::GenericSelectorEvents => "",
AppCUITrait::ComboBoxEvents => "",
AppCUITrait::GenericDropDownListEvents => "",
AppCUITrait::GenericNumericSelectorEvents => "",
AppCUITrait::DatePickerEvents => "",
AppCUITrait::ListBoxEvents => "",
AppCUITrait::GenericListViewEvents => "",
AppCUITrait::ToggleButtonEvents => "",
AppCUITrait::PathFinderEvents => "",
AppCUITrait::TimerEvents => "",
AppCUITrait::GenericTreeViewEvents => "",
AppCUITrait::MarkdownEvents => "",
AppCUITrait::GenericBackgroundTaskEvents => "",
AppCUITrait::AccordionEvents => "",
}
}
pub(crate) fn default_implementation(&self) -> &'static str {
match self {
AppCUITrait::Deref => "",
AppCUITrait::Control => "impl$(TEMPLATE_TYPE) Control for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::DesktopControl => "impl$(TEMPLATE_TYPE) DesktopControl for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::WindowControl => "impl$(TEMPLATE_TYPE) WindowControl for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::NotDesktop => "impl$(TEMPLATE_TYPE) NotDesktop for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::NotWindow => "impl$(TEMPLATE_TYPE) NotWindow for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::NotModalWindow => "impl$(TEMPLATE_TYPE) NotModalWindow for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::OnWindowRegistered => "impl$(TEMPLATE_TYPE) OnWindowRegistered for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::ModalWindowMethods => "",
AppCUITrait::OnPaint => "impl$(TEMPLATE_TYPE) OnPaint for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::OnKeyPressed => "impl$(TEMPLATE_TYPE) OnKeyPressed for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::OnMouseEvent => "impl$(TEMPLATE_TYPE) OnMouseEvent for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::OnDefaultAction => "impl$(TEMPLATE_TYPE) OnDefaultAction for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::OnResize => "impl$(TEMPLATE_TYPE) OnResize for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::OnFocus => "impl$(TEMPLATE_TYPE) OnFocus for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::OnExpand => "impl$(TEMPLATE_TYPE) OnExpand for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::OnSiblingSelected => "impl$(TEMPLATE_TYPE) OnSiblingSelected for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::OnThemeChanged => "impl$(TEMPLATE_TYPE) OnThemeChanged for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::ButtonEvents => "impl$(TEMPLATE_TYPE) ButtonEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::CheckBoxEvents => "impl$(TEMPLATE_TYPE) CheckBoxEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::WindowEvents => "impl$(TEMPLATE_TYPE) WindowEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::CommandBarEvents => "impl$(TEMPLATE_TYPE) GenericCommandBarEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::MenuEvents => "impl$(TEMPLATE_TYPE) GenericMenuEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::DesktopEvents => "impl$(TEMPLATE_TYPE) DesktopEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::ToolBarEvents => "impl$(TEMPLATE_TYPE) ToolBarEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::ColorPickerEvents => "impl$(TEMPLATE_TYPE) ColorPickerEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::ThreeStateBoxEvents => "impl$(TEMPLATE_TYPE) ThreeStateBoxEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::RadioBoxEvents => "impl$(TEMPLATE_TYPE) RadioBoxEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::PasswordEvents => "impl$(TEMPLATE_TYPE) PasswordEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::KeySelectorEvents => "impl$(TEMPLATE_TYPE) KeySelectorEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::TextFieldEvents => "impl$(TEMPLATE_TYPE) TextFieldEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::CustomEvents => "impl$(TEMPLATE_TYPE) CustomEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::GenericSelectorEvents => "impl$(TEMPLATE_TYPE) GenericSelectorEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::ComboBoxEvents => "impl$(TEMPLATE_TYPE) ComboBoxEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::GenericDropDownListEvents => "impl$(TEMPLATE_TYPE) GenericDropDownListEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::GenericNumericSelectorEvents => "impl$(TEMPLATE_TYPE) GenericNumericSelectorEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::DatePickerEvents => "impl$(TEMPLATE_TYPE) DatePickerEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::ListBoxEvents => "impl$(TEMPLATE_TYPE) ListBoxEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::GenericListViewEvents => "impl$(TEMPLATE_TYPE) GenericListViewEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::ToggleButtonEvents => "impl$(TEMPLATE_TYPE) ToggleButtonEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::PathFinderEvents => "impl$(TEMPLATE_TYPE) PathFinderEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::TimerEvents => "impl$(TEMPLATE_TYPE) TimerEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::GenericTreeViewEvents => "impl$(TEMPLATE_TYPE) GenericTreeViewEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::MarkdownEvents => "impl$(TEMPLATE_TYPE) MarkdownEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::GenericBackgroundTaskEvents => "impl$(TEMPLATE_TYPE) GenericBackgroundTaskEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
AppCUITrait::AccordionEvents => "impl$(TEMPLATE_TYPE) AccordionEvents for $(STRUCT_NAME)$(TEMPLATE_DEF) {}",
}
}
pub(crate) fn is_generic(&self) -> bool {
matches!(
self,
AppCUITrait::GenericSelectorEvents
| AppCUITrait::GenericDropDownListEvents
| AppCUITrait::GenericNumericSelectorEvents
| AppCUITrait::GenericListViewEvents
| AppCUITrait::GenericTreeViewEvents
| AppCUITrait::GenericBackgroundTaskEvents
)
}
pub(crate) fn new(name: &str) -> Option<AppCUITrait> {
match name {
"OnPaint" => Some(AppCUITrait::OnPaint),
"OnKeyPressed" => Some(AppCUITrait::OnKeyPressed),
"OnMouseEvent" => Some(AppCUITrait::OnMouseEvent),
"OnDefaultAction" => Some(AppCUITrait::OnDefaultAction),
"OnResize" => Some(AppCUITrait::OnResize),
"OnFocus" => Some(AppCUITrait::OnFocus),
"OnExpand" => Some(AppCUITrait::OnExpand),
"OnSiblingSelected" => Some(AppCUITrait::OnSiblingSelected),
"OnThemeChanged" => Some(AppCUITrait::OnThemeChanged),
"ButtonEvents" | "Button" => Some(AppCUITrait::ButtonEvents),
"CheckBoxEvents" | "CheckBox" => Some(AppCUITrait::CheckBoxEvents),
"RadioBoxEvents" | "RadioBox" => Some(AppCUITrait::RadioBoxEvents),
"PasswordEvents" | "Password" => Some(AppCUITrait::PasswordEvents),
"WindowEvents" | "Window" => Some(AppCUITrait::WindowEvents),
"CommandBarEvents" | "CommandBar" => Some(AppCUITrait::CommandBarEvents),
"MenuEvents" | "MenuBar" => Some(AppCUITrait::MenuEvents),
"DesktopEvents" | "Desktop" => Some(AppCUITrait::DesktopEvents),
"ToolBarEvents" | "ToolBar" => Some(AppCUITrait::ToolBarEvents),
"ColorPickerEvents" | "ColorPicker" => Some(AppCUITrait::ColorPickerEvents),
"ThreeStateBoxEvents" | "ThreeStateBox" => Some(AppCUITrait::ThreeStateBoxEvents),
"KeySelectorEvents" | "KeySelector" => Some(AppCUITrait::KeySelectorEvents),
"TextFieldEvents" | "TextField" => Some(AppCUITrait::TextFieldEvents),
"SelectorEvents" | "Selector" => Some(AppCUITrait::GenericSelectorEvents),
"ComboBoxEvents" | "ComboBox" => Some(AppCUITrait::ComboBoxEvents),
"DropDownListEvents" | "DropDownList" => Some(AppCUITrait::GenericDropDownListEvents),
"NumericSelectorEvents" | "NumericSelector" => Some(AppCUITrait::GenericNumericSelectorEvents),
"DatePickerEvents" | "DatePicker" => Some(AppCUITrait::DatePickerEvents),
"ListBoxEvents" | "ListBox" => Some(AppCUITrait::ListBoxEvents),
"ListViewEvents" | "ListView" => Some(AppCUITrait::GenericListViewEvents),
"ToggleButtonEvents" | "ToggleButton" => Some(AppCUITrait::ToggleButtonEvents),
"PathFinderEvents" | "PathFinder" => Some(AppCUITrait::PathFinderEvents),
"TimerEvents" | "Timer" => Some(AppCUITrait::TimerEvents),
"TreeViewEvents" | "TreeView" => Some(AppCUITrait::GenericTreeViewEvents),
"MarkdownEvents" | "Markdown" => Some(AppCUITrait::MarkdownEvents),
"BackgroundTaskEvents" | "BackgroundTask" => Some(AppCUITrait::GenericBackgroundTaskEvents),
"AccordionEvents" | "Accordion" => Some(AppCUITrait::AccordionEvents),
_ => None,
}
}
pub(crate) fn with_discriminant(value: u8) -> Option<AppCUITrait> {
let result = match value {
0 => Some(AppCUITrait::Deref),
1 => Some(AppCUITrait::Control),
2 => Some(AppCUITrait::DesktopControl),
3 => Some(AppCUITrait::WindowControl),
4 => Some(AppCUITrait::NotWindow),
5 => Some(AppCUITrait::NotModalWindow),
6 => Some(AppCUITrait::NotDesktop),
7 => Some(AppCUITrait::OnWindowRegistered),
8 => Some(AppCUITrait::ModalWindowMethods),
9 => Some(AppCUITrait::OnPaint),
10 => Some(AppCUITrait::OnKeyPressed),
11 => Some(AppCUITrait::OnMouseEvent),
12 => Some(AppCUITrait::OnDefaultAction),
13 => Some(AppCUITrait::OnResize),
14 => Some(AppCUITrait::OnFocus),
15 => Some(AppCUITrait::OnExpand),
16 => Some(AppCUITrait::OnSiblingSelected),
17 => Some(AppCUITrait::OnThemeChanged),
18 => Some(AppCUITrait::ButtonEvents),
19 => Some(AppCUITrait::CheckBoxEvents),
20 => Some(AppCUITrait::WindowEvents),
21 => Some(AppCUITrait::CommandBarEvents),
22 => Some(AppCUITrait::MenuEvents),
23 => Some(AppCUITrait::DesktopEvents),
24 => Some(AppCUITrait::ToolBarEvents),
25 => Some(AppCUITrait::ColorPickerEvents),
26 => Some(AppCUITrait::ThreeStateBoxEvents),
27 => Some(AppCUITrait::RadioBoxEvents),
28 => Some(AppCUITrait::PasswordEvents),
29 => Some(AppCUITrait::KeySelectorEvents),
30 => Some(AppCUITrait::TextFieldEvents),
31 => Some(AppCUITrait::CustomEvents),
32 => Some(AppCUITrait::GenericSelectorEvents),
33 => Some(AppCUITrait::ComboBoxEvents),
34 => Some(AppCUITrait::GenericDropDownListEvents),
35 => Some(AppCUITrait::GenericNumericSelectorEvents),
36 => Some(AppCUITrait::DatePickerEvents),
37 => Some(AppCUITrait::ListBoxEvents),
38 => Some(AppCUITrait::GenericListViewEvents),
39 => Some(AppCUITrait::ToggleButtonEvents),
40 => Some(AppCUITrait::PathFinderEvents),
41 => Some(AppCUITrait::TimerEvents),
42 => Some(AppCUITrait::GenericTreeViewEvents),
43 => Some(AppCUITrait::MarkdownEvents),
44 => Some(AppCUITrait::GenericBackgroundTaskEvents),
45 => Some(AppCUITrait::AccordionEvents),
_ => None,
};
result?;
if value != (result.unwrap() as u8) {
panic!("Internal error: Conversion of discriminant {value} to AppCUITraits failed !");
}
result
}
}