Skip to main content

ohos_arkui_binding/type/
event.rs

1//! Module type::event wrappers and related types.
2
3use ohos_arkui_sys::*;
4
5use ohos_enum_derive::EnumFrom;
6
7#[derive(Debug, Clone, Copy, PartialEq, Eq, EnumFrom)]
8#[config(ArkUI_NodeEventType, "ArkUI_NodeEventType_NODE_")]
9/// Event identifiers that can be registered on a node.
10pub enum NodeEventType {
11    TouchEvent,
12    EventOnAppear,
13    EventOnDisappear,
14    EventOnAreaChange,
15    OnFocus,
16    OnBlur,
17    OnClick,
18    OnTouchIntercept,
19    EventOnVisibleAreaChange,
20    OnHover,
21    OnMouse,
22    EventOnAttach,
23    EventOnDetach,
24    OnAccessibilityActions,
25    OnPreDrag,
26    OnDragStart,
27    OnDragEnter,
28    OnDragMove,
29    OnDragLeave,
30    OnDrop,
31    OnDragEnd,
32    #[cfg(feature = "api-14")]
33    OnKeyEvent,
34    #[cfg(feature = "api-14")]
35    OnKeyPreIme,
36    #[cfg(feature = "api-15")]
37    OnFocusAxis,
38    #[cfg(feature = "api-15")]
39    DispatchKeyEvent,
40    #[cfg(feature = "api-17")]
41    OnAxis,
42    #[cfg(feature = "api-18")]
43    OnClickEvent,
44    #[cfg(feature = "api-17")]
45    OnHoverEvent,
46    #[cfg(feature = "api-17")]
47    VisibleAreaApproximateChangeEvent,
48    #[cfg(feature = "api-15")]
49    OnHoverMove,
50    #[cfg(feature = "api-21")]
51    OnSizeChange,
52    #[cfg(feature = "api-22")]
53    OnCoastingAxisEvent,
54    #[cfg(feature = "api-22")]
55    OnChildTouchTest,
56    TextOnDetectResultUpdate,
57    #[cfg(feature = "api-20")]
58    TextSpanOnLongPress,
59    ImageOnComplete,
60    ImageOnError,
61    ImageOnSvgPlayFinish,
62    ImageOnDownloadProgress,
63    ToggleOnChange,
64    TextInputOnChange,
65    TextInputOnSubmit,
66    TextInputOnCut,
67    TextInputOnPaste,
68    TextInputOnTextSelectionChange,
69    TextInputOnEditChange,
70    TextInputOnContentSizeChange,
71    TextInputOnInputFilterError,
72    TextInputOnContentScroll,
73    TextInputOnWillInsert,
74    TextInputOnDidInsert,
75    TextInputOnWillDelete,
76    TextInputOnDidDelete,
77    #[cfg(feature = "api-15")]
78    TextInputOnChangeWithPreviewText,
79    #[cfg(feature = "api-20")]
80    TextInputOnWillChange,
81    TextAreaOnChange,
82    TextAreaOnPaste,
83    TextAreaOnTextSelectionChange,
84    TextAreaOnInputFilterError,
85    TextAreaOnContentScroll,
86    TextAreaOnEditChange,
87    TextAreaOnSubmit,
88    TextAreaOnContentSizeChange,
89    TextAreaOnWillInsert,
90    TextAreaOnDidInsert,
91    TextAreaOnWillDelete,
92    TextAreaOnDidDelete,
93    #[cfg(feature = "api-15")]
94    TextAreaOnChangeWithPreviewText,
95    #[cfg(feature = "api-20")]
96    TextAreaOnWillChange,
97    CheckboxEventOnChange,
98    DatePickerEventOnDateChange,
99    TimePickerEventOnChange,
100    TextPickerEventOnChange,
101    #[cfg(feature = "api-14")]
102    TextPickerEventOnScrollStop,
103    CalendarPickerEventOnChange,
104    SliderEventOnChange,
105    RadioEventOnChange,
106    ImageAnimatorEventOnStart,
107    ImageAnimatorEventOnPause,
108    ImageAnimatorEventOnRepeat,
109    ImageAnimatorEventOnCancel,
110    ImageAnimatorEventOnFinish,
111    #[cfg(feature = "api-15")]
112    CheckboxGroupEventOnChange,
113    SwiperEventOnChange,
114    SwiperEventOnAnimationStart,
115    SwiperEventOnAnimationEnd,
116    SwiperEventOnGestureSwipe,
117    SwiperEventOnContentDidScroll,
118    #[cfg(feature = "api-15")]
119    SwiperEventOnContentWillScroll,
120    #[cfg(feature = "api-18")]
121    SwiperEventOnSelected,
122    #[cfg(feature = "api-18")]
123    SwiperEventOnUnselected,
124    #[cfg(feature = "api-20")]
125    SwiperEventOnScrollStateChanged,
126    ScrollEventOnScroll,
127    ScrollEventOnScrollFrameBegin,
128    ScrollEventOnWillScroll,
129    ScrollEventOnDidScroll,
130    ScrollEventOnScrollStart,
131    ScrollEventOnScrollStop,
132    ScrollEventOnScrollEdge,
133    ScrollEventOnReachStart,
134    ScrollEventOnReachEnd,
135    #[cfg(feature = "api-20")]
136    ScrollEventOnWillStopDragging,
137    #[cfg(feature = "api-20")]
138    ScrollEventOnDidZoom,
139    #[cfg(feature = "api-20")]
140    ScrollEventOnZoomStart,
141    #[cfg(feature = "api-20")]
142    ScrollEventOnZoomStop,
143    #[cfg(feature = "api-21")]
144    ScrollEventOnWillStartDragging,
145    #[cfg(feature = "api-21")]
146    ScrollEventOnDidStopDragging,
147    #[cfg(feature = "api-21")]
148    ScrollEventOnWillStartFling,
149    #[cfg(feature = "api-21")]
150    ScrollEventOnDidStopFling,
151    ListOnScrollIndex,
152    ListOnWillScroll,
153    ListOnDidScroll,
154    #[cfg(feature = "api-15")]
155    ListOnScrollVisibleContentChange,
156    RefreshStateChange,
157    RefreshOnRefresh,
158    RefreshOnOffsetChange,
159    OnWillScroll,
160    WaterFlowOnDidScroll,
161    WaterFlowOnScrollIndex,
162    #[cfg(feature = "api-22")]
163    GridOnScrollIndex,
164    #[cfg(feature = "api-22")]
165    GridOnWillScroll,
166    #[cfg(feature = "api-22")]
167    GridOnDidScroll,
168    #[cfg(feature = "api-22")]
169    GridOnScrollBarUpdate,
170}
171
172#[cfg(feature = "api-22")]
173#[derive(Debug, Clone, Copy, PartialEq, Eq, EnumFrom)]
174#[config(
175    ArkUI_TouchTestStrategy,
176    "ArkUI_TouchTestStrategy_ARKUI_TOUCH_TEST_STRATEGY_"
177)]
178/// Dispatch strategy for child touch-test callbacks.
179pub enum TouchTestStrategy {
180    Default,
181    ForwardCompetition,
182    Forward,
183}