arkui_sys/native_animate/native_animate_ffi.rs
1// automatically generated by rust-bindgen 0.71.1
2
3#![allow(non_upper_case_globals)]
4#![allow(non_camel_case_types)]
5#![allow(non_snake_case)]
6use crate::native_type::*;
7
8/// Defines the expected frame rate range of the animation.
9///
10///
11/// Available since API-level: 12
12#[cfg(feature = "api-12")]
13#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
14#[repr(C)]
15#[derive(Debug, Copy, Clone)]
16pub struct ArkUI_ExpectedFrameRateRange {
17 /// Expected minimum frame rate.
18 pub min: u32,
19 /// Expected maximum frame rate.
20 pub max: u32,
21 /// Expected optimal frame rate.
22 pub expected: u32,
23}
24/// Defines the callback type for when the animation playback is complete.
25///
26///
27/// Available since API-level: 12
28#[cfg(feature = "api-12")]
29#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
30#[repr(C)]
31pub struct ArkUI_AnimateCompleteCallback {
32 /// Type of the <b>onFinish</b> callback.
33 pub type_: ArkUI_FinishCallbackType,
34 /// Callback invoked when the animation playback is complete.
35 pub callback: ::core::option::Option<unsafe extern "C" fn(userData: *mut ::core::ffi::c_void)>,
36 /// Custom type.
37 pub userData: *mut ::core::ffi::c_void,
38}
39/// Defines the animation configuration.
40///
41///
42/// Available since API-level: 12
43#[cfg(feature = "api-12")]
44#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
45#[repr(C)]
46pub struct ArkUI_AnimateOption {
47 _unused: [u8; 0],
48}
49/// Defines an interpolation curve.
50///
51///
52/// Available since API-level: 12
53#[cfg(feature = "api-12")]
54#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
55#[repr(C)]
56pub struct ArkUI_Curve {
57 _unused: [u8; 0],
58}
59/// Defines the pointer to an interpolation curve.
60///
61///
62/// Available since API-level: 12
63#[cfg(feature = "api-12")]
64#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
65pub type ArkUI_CurveHandle = *mut ArkUI_Curve;
66/// Defines the keyframe animation parameter object.
67///
68///
69/// Available since API-level: 12
70#[cfg(feature = "api-12")]
71#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
72#[repr(C)]
73pub struct ArkUI_KeyframeAnimateOption {
74 _unused: [u8; 0],
75}
76/// Defines the animator parameter object.
77///
78///
79/// Available since API-level: 12
80#[cfg(feature = "api-12")]
81#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
82#[repr(C)]
83pub struct ArkUI_AnimatorOption {
84 _unused: [u8; 0],
85}
86#[repr(C)]
87pub struct ArkUI_Animator {
88 _unused: [u8; 0],
89}
90/// Defines the pointer to an animator object.
91///
92///
93/// Available since API-level: 12
94#[cfg(feature = "api-12")]
95#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
96pub type ArkUI_AnimatorHandle = *mut ArkUI_Animator;
97/// Defines the animator callback event object.
98///
99///
100/// Available since API-level: 12
101#[cfg(feature = "api-12")]
102#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
103#[repr(C)]
104pub struct ArkUI_AnimatorEvent {
105 _unused: [u8; 0],
106}
107/// Defines the callback object when the animator receives a frame.
108///
109///
110/// Available since API-level: 12
111#[cfg(feature = "api-12")]
112#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
113#[repr(C)]
114pub struct ArkUI_AnimatorOnFrameEvent {
115 _unused: [u8; 0],
116}
117/// Defines the transition effect.
118///
119///
120/// Available since API-level: 12
121#[cfg(feature = "api-12")]
122#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
123#[repr(C)]
124pub struct ArkUI_TransitionEffect {
125 _unused: [u8; 0],
126}
127/// Implements the native animation APIs provided by ArkUI.
128///
129///
130/// Version: 1
131///
132/// Available since API-level: 12
133#[cfg(feature = "api-12")]
134#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
135#[repr(C)]
136pub struct ArkUI_NativeAnimateAPI_1 {
137 /// Defines an explicit animation.
138 ///
139 ///
140 /// **Note:** Make sure the component attributes to be set in the event closure have been set before.
141 ///
142 /// # Arguments
143 ///
144 /// * `context` - Indicates a <b>UIContext</b> instance.
145 ///
146 /// * `option` - Indicates the pointer to an animation configuration.
147 ///
148 /// * `update` - Indicates the animation closure. The system automatically inserts a transition animation for the
149 /// state change caused by the closure.
150 ///
151 /// * `complete` - Indicates the callback to be invoked when the animation playback is complete.
152 ///
153 /// # Returns
154 ///
155 /// * Returns the error code.
156 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
157 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
158 pub animateTo: ::core::option::Option<
159 unsafe extern "C" fn(
160 context: ArkUI_ContextHandle,
161 option: *mut ArkUI_AnimateOption,
162 update: *mut ArkUI_ContextCallback,
163 complete: *mut ArkUI_AnimateCompleteCallback,
164 ) -> i32,
165 >,
166 /// Sets the keyframe animation.
167 ///
168 ///
169 /// # Arguments
170 ///
171 /// * `context` - Indicates a <b>UIContext</b> instance.
172 ///
173 /// * `option` - Indicates the keyframe animation parameters.
174 ///
175 /// # Returns
176 ///
177 /// * Returns the error code.
178 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
179 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
180 pub keyframeAnimateTo: ::core::option::Option<
181 unsafe extern "C" fn(
182 context: ArkUI_ContextHandle,
183 option: *mut ArkUI_KeyframeAnimateOption,
184 ) -> i32,
185 >,
186 /// Creates an animator object.
187 ///
188 /// # Arguments
189 ///
190 /// * `context` - Indicates a <b>UIContext</b> instance.
191 ///
192 /// * `option` - Indicates the animator parameters.
193 ///
194 /// # Returns
195 ///
196 /// * Returns the pointer to the animator object; returns <b>NULL</b> if a function parameter error occurs.
197 pub createAnimator: ::core::option::Option<
198 unsafe extern "C" fn(
199 context: ArkUI_ContextHandle,
200 option: *mut ArkUI_AnimatorOption,
201 ) -> ArkUI_AnimatorHandle,
202 >,
203 /// Disposes of an animator object.
204 ///
205 /// # Arguments
206 ///
207 /// * `animatorHandle` - Indicates the target animator object.
208 pub disposeAnimator:
209 ::core::option::Option<unsafe extern "C" fn(animatorHandle: ArkUI_AnimatorHandle)>,
210}
211extern "C" {
212 /// Creates an animation configuration.
213 ///
214 ///
215 /// # Returns
216 ///
217 /// * Returns the pointer to the created animation configuration.
218 ///
219 /// Available since API-level: 12
220 #[cfg(feature = "api-12")]
221 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
222 pub fn OH_ArkUI_AnimateOption_Create() -> *mut ArkUI_AnimateOption;
223 /// Disposes of an animation configuration.
224 ///
225 /// # Arguments
226 ///
227 /// * `option` - Indicates the pointer to an animation configuration.
228 ///
229 /// Available since API-level: 12
230 #[cfg(feature = "api-12")]
231 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
232 pub fn OH_ArkUI_AnimateOption_Dispose(option: *mut ArkUI_AnimateOption);
233 /// Obtains the animation duration, in milliseconds.
234 ///
235 /// # Arguments
236 ///
237 /// * `option` - Indicates the pointer to an animation configuration.
238 ///
239 /// # Returns
240 ///
241 /// * Returns the duration.
242 ///
243 /// Available since API-level: 12
244 #[cfg(feature = "api-12")]
245 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
246 pub fn OH_ArkUI_AnimateOption_GetDuration(option: *mut ArkUI_AnimateOption) -> u32;
247 /// Obtains the animation playback speed.
248 ///
249 /// # Arguments
250 ///
251 /// * `option` - Indicates the pointer to an animation configuration.
252 ///
253 /// # Returns
254 ///
255 /// * Returns the animation playback speed.
256 ///
257 /// Available since API-level: 12
258 #[cfg(feature = "api-12")]
259 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
260 pub fn OH_ArkUI_AnimateOption_GetTempo(option: *mut ArkUI_AnimateOption) -> f32;
261 /// Obtains the animation curve.
262 ///
263 /// # Arguments
264 ///
265 /// * `option` - Indicates the pointer to an animation configuration.
266 ///
267 /// # Returns
268 ///
269 /// * Returns the animated curve.If Null is returned, it means option is an invalid value.
270 ///
271 /// Available since API-level: 12
272 #[cfg(feature = "api-12")]
273 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
274 pub fn OH_ArkUI_AnimateOption_GetCurve(
275 option: *mut ArkUI_AnimateOption,
276 ) -> ArkUI_AnimationCurve;
277 /// Obtains the animation delay, in milliseconds.
278 ///
279 /// # Arguments
280 ///
281 /// * `option` - Indicates the pointer to an animation configuration.
282 ///
283 /// # Returns
284 ///
285 /// * Returns the animation delay.
286 ///
287 /// Available since API-level: 12
288 #[cfg(feature = "api-12")]
289 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
290 pub fn OH_ArkUI_AnimateOption_GetDelay(option: *mut ArkUI_AnimateOption) -> i32;
291 /// Obtains the number of times that an animation is played.
292 ///
293 /// # Arguments
294 ///
295 /// * `option` - Indicates the pointer to an animation configuration.
296 ///
297 /// # Returns
298 ///
299 /// * Returns the number of times that the animation is played.
300 ///
301 /// Available since API-level: 12
302 #[cfg(feature = "api-12")]
303 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
304 pub fn OH_ArkUI_AnimateOption_GetIterations(option: *mut ArkUI_AnimateOption) -> i32;
305 /// Obtains the animation playback mode.
306 ///
307 /// # Arguments
308 ///
309 /// * `option` - Indicates the pointer to an animation configuration.
310 ///
311 /// # Returns
312 ///
313 /// * Returns the animation playback mode.
314 ///
315 /// Available since API-level: 12
316 #[cfg(feature = "api-12")]
317 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
318 pub fn OH_ArkUI_AnimateOption_GetPlayMode(
319 option: *mut ArkUI_AnimateOption,
320 ) -> ArkUI_AnimationPlayMode;
321 /// Obtains the expected frame rate range of an animation.
322 ///
323 /// # Arguments
324 ///
325 /// * `option` - Indicates the pointer to an animation configuration.
326 ///
327 /// # Returns
328 ///
329 /// * Returns the expected frame rate range.
330 ///
331 /// Available since API-level: 12
332 #[cfg(feature = "api-12")]
333 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
334 pub fn OH_ArkUI_AnimateOption_GetExpectedFrameRateRange(
335 option: *mut ArkUI_AnimateOption,
336 ) -> *mut ArkUI_ExpectedFrameRateRange;
337 /// Sets the animation duration.
338 ///
339 /// # Arguments
340 ///
341 /// * `option` - Indicates the pointer to an animation configuration.
342 ///
343 /// * `value` - Indicates the duration, in milliseconds.
344 ///
345 /// Available since API-level: 12
346 #[cfg(feature = "api-12")]
347 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
348 pub fn OH_ArkUI_AnimateOption_SetDuration(option: *mut ArkUI_AnimateOption, value: i32);
349 /// Sets the animation playback speed.
350 ///
351 /// # Arguments
352 ///
353 /// * `option` - Indicates the pointer to an animation configuration.
354 ///
355 /// * `value` - Indicates the animation playback speed.
356 ///
357 /// Available since API-level: 12
358 #[cfg(feature = "api-12")]
359 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
360 pub fn OH_ArkUI_AnimateOption_SetTempo(option: *mut ArkUI_AnimateOption, value: f32);
361 /// Sets the animation curve.
362 ///
363 /// # Arguments
364 ///
365 /// * `option` - Indicates the pointer to an animation configuration.
366 ///
367 /// * `value` - Indicates the animated curve. Default value:ARKUI_CURVE_LINEAR.
368 ///
369 /// Available since API-level: 12
370 #[cfg(feature = "api-12")]
371 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
372 pub fn OH_ArkUI_AnimateOption_SetCurve(
373 option: *mut ArkUI_AnimateOption,
374 value: ArkUI_AnimationCurve,
375 );
376 /// Sets the animation delay.
377 ///
378 /// # Arguments
379 ///
380 /// * `option` - Indicates the pointer to an animation configuration.
381 ///
382 /// * `value` - Indicates the animation delay.
383 ///
384 /// Available since API-level: 12
385 #[cfg(feature = "api-12")]
386 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
387 pub fn OH_ArkUI_AnimateOption_SetDelay(option: *mut ArkUI_AnimateOption, value: i32);
388 /// Sets the number of times that an animation is played.
389 ///
390 /// # Arguments
391 ///
392 /// * `option` - Indicates the pointer to an animation configuration.
393 ///
394 /// * `value` - Indicates the number of times that the animation is played.
395 ///
396 /// Available since API-level: 12
397 #[cfg(feature = "api-12")]
398 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
399 pub fn OH_ArkUI_AnimateOption_SetIterations(option: *mut ArkUI_AnimateOption, value: i32);
400 /// Sets the animation playback mode.
401 ///
402 /// # Arguments
403 ///
404 /// * `option` - Indicates the pointer to an animation configuration.
405 ///
406 /// * `value` - Indicates the animation playback mode.
407 ///
408 /// Available since API-level: 12
409 #[cfg(feature = "api-12")]
410 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
411 pub fn OH_ArkUI_AnimateOption_SetPlayMode(
412 option: *mut ArkUI_AnimateOption,
413 value: ArkUI_AnimationPlayMode,
414 );
415 /// Sets the expected frame rate range of an animation.
416 ///
417 /// # Arguments
418 ///
419 /// * `option` - Indicates the pointer to an animation configuration.
420 ///
421 /// * `value` - Indicates the expected frame rate range.
422 ///
423 /// Available since API-level: 12
424 #[cfg(feature = "api-12")]
425 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
426 pub fn OH_ArkUI_AnimateOption_SetExpectedFrameRateRange(
427 option: *mut ArkUI_AnimateOption,
428 value: *mut ArkUI_ExpectedFrameRateRange,
429 );
430 /// Sets the animation curve for the animation of an animator.
431 ///
432 ///
433 /// **Note:** This method is better than the value set by OH_ArkUI_AnimateOption_SetCurve.
434 /// # Arguments
435 ///
436 /// * `option` - Indicates the animator parameters.
437 ///
438 /// * `value` - Indicates the animation curve settings.
439 ///
440 /// Available since API-level: 12
441 #[cfg(feature = "api-12")]
442 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
443 pub fn OH_ArkUI_AnimateOption_SetICurve(
444 option: *mut ArkUI_AnimateOption,
445 value: ArkUI_CurveHandle,
446 );
447 /// Obtains the animation curve of the animation of an animator.
448 ///
449 /// # Arguments
450 ///
451 /// * `option` - Indicates the animator parameters.
452 ///
453 /// # Returns
454 ///
455 /// * Returns the animation curve of the specified animation.
456 /// If Null is returned, it means option is an invalid value.
457 ///
458 /// Available since API-level: 12
459 #[cfg(feature = "api-12")]
460 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
461 pub fn OH_ArkUI_AnimateOption_GetICurve(option: *mut ArkUI_AnimateOption) -> ArkUI_CurveHandle;
462 /// Obtains the keyframe animation parameters.
463 ///
464 /// # Arguments
465 ///
466 /// * `size` - Indicates the number of keyframe animation states.
467 ///
468 /// # Returns
469 ///
470 /// * Returns the keyframe animation parameter object; returns <b>NULL</b> if the value of <b>size</b> is less than
471 /// 0.
472 ///
473 /// Available since API-level: 12
474 #[cfg(feature = "api-12")]
475 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
476 pub fn OH_ArkUI_KeyframeAnimateOption_Create(size: i32) -> *mut ArkUI_KeyframeAnimateOption;
477 /// Disposes of the keyframe animation parameter object.
478 ///
479 /// # Arguments
480 ///
481 /// * `option` - Indicates the keyframe animation parameter object.
482 ///
483 /// Available since API-level: 12
484 #[cfg(feature = "api-12")]
485 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
486 pub fn OH_ArkUI_KeyframeAnimateOption_Dispose(option: *mut ArkUI_KeyframeAnimateOption);
487 /// Sets the overall delay of a keyframe animation, in milliseconds. By default, the keyframe animation is played
488 /// without delay.
489 ///
490 /// # Arguments
491 ///
492 /// * `option` - Indicates the keyframe animation parameters.
493 ///
494 /// * `value` - Indicates the delay, in milliseconds.
495 ///
496 /// # Returns
497 ///
498 /// * Returns the error code.
499 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
500 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
501 ///
502 /// Available since API-level: 12
503 #[cfg(feature = "api-12")]
504 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
505 pub fn OH_ArkUI_KeyframeAnimateOption_SetDelay(
506 option: *mut ArkUI_KeyframeAnimateOption,
507 value: i32,
508 ) -> i32;
509 /// Sets the number of times that the keyframe animation is played. By default, the animation is played once.
510 /// The value <b>-1</b> indicates that the animation is played for an unlimited number of times. The value <b>0</b>
511 /// indicates that there is no animation.
512 ///
513 /// # Arguments
514 ///
515 /// * `option` - Indicates the keyframe animation parameters.
516 ///
517 /// * `value` - Indicates the number of times that the animation is played.
518 ///
519 /// # Returns
520 ///
521 /// * Returns the error code.
522 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
523 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
524 ///
525 /// Available since API-level: 12
526 #[cfg(feature = "api-12")]
527 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
528 pub fn OH_ArkUI_KeyframeAnimateOption_SetIterations(
529 option: *mut ArkUI_KeyframeAnimateOption,
530 value: i32,
531 ) -> i32;
532 /// Sets the callback invoked when the keyframe animation playback is complete. This API is called after the
533 /// keyframe animation has played for the specified number of times.
534 ///
535 /// # Arguments
536 ///
537 /// * `option` - Indicates the keyframe animation parameters.
538 ///
539 /// * `userData` - Indicates the pointer to a custom object.
540 ///
541 /// * `onFinish` - Indicates the callback.
542 ///
543 /// # Returns
544 ///
545 /// * Returns the error code.
546 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
547 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
548 ///
549 /// Available since API-level: 12
550 #[cfg(feature = "api-12")]
551 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
552 pub fn OH_ArkUI_KeyframeAnimateOption_RegisterOnFinishCallback(
553 option: *mut ArkUI_KeyframeAnimateOption,
554 userData: *mut ::core::ffi::c_void,
555 onFinish: ::core::option::Option<unsafe extern "C" fn(userData: *mut ::core::ffi::c_void)>,
556 ) -> i32;
557 /// Sets the expected frame rate range of a keyframe animation.
558 ///
559 /// # Arguments
560 ///
561 /// * `option` - Indicates the pointer to a keyframe animation configuration.
562 ///
563 /// * `frameRate` - Indicates the expected frame rate range.
564 ///
565 /// # Returns
566 ///
567 /// * Returns the error code.
568 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
569 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
570 ///
571 /// Available since API-level: 19
572 #[cfg(feature = "api-19")]
573 #[cfg_attr(docsrs, doc(cfg(feature = "api-19")))]
574 pub fn OH_ArkUI_KeyframeAnimateOption_SetExpectedFrameRate(
575 option: *mut ArkUI_KeyframeAnimateOption,
576 frameRate: *mut ArkUI_ExpectedFrameRateRange,
577 ) -> i32;
578 /// Sets the duration of a keyframe animation, in milliseconds.
579 ///
580 /// # Arguments
581 ///
582 /// * `option` - Indicates the keyframe animation parameters.
583 ///
584 /// * `value` - Indicates the duration to set, in milliseconds.
585 ///
586 /// * `index` - Indicates a state index.
587 ///
588 /// # Returns
589 ///
590 /// * Returns the error code.
591 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
592 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
593 ///
594 /// Available since API-level: 12
595 #[cfg(feature = "api-12")]
596 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
597 pub fn OH_ArkUI_KeyframeAnimateOption_SetDuration(
598 option: *mut ArkUI_KeyframeAnimateOption,
599 value: i32,
600 index: i32,
601 ) -> i32;
602 /// Sets the animation curve for a specific keyframe in a keyframe animation.
603 ///
604 ///
605 /// **Note:** Because the <b>springMotion</b>, <b>responsiveSpringMotion</b>, and <b>interpolatingSpring</b> curves do not
606 /// have effective duration settings, they are not supported.
607 /// # Arguments
608 ///
609 /// * `option` - Indicates the keyframe animation parameters.
610 ///
611 /// * `value` - Indicates the animation curve to set. Default value:EASE_IN_OUT.
612 ///
613 /// * `index` - Indicates a state index.
614 ///
615 /// # Returns
616 ///
617 /// * Returns the error code.
618 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
619 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
620 ///
621 /// Available since API-level: 12
622 #[cfg(feature = "api-12")]
623 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
624 pub fn OH_ArkUI_KeyframeAnimateOption_SetCurve(
625 option: *mut ArkUI_KeyframeAnimateOption,
626 value: ArkUI_CurveHandle,
627 index: i32,
628 ) -> i32;
629 /// Sets the closure function of the state at the time of the keyframe, that is, the state to be reached at the
630 /// time of the keyframe.
631 ///
632 /// # Arguments
633 ///
634 /// * `option` - Indicates the keyframe animation parameters.
635 ///
636 /// * `event` - Indicates a closure function.
637 ///
638 /// * `userData` - Indicates the pointer to a custom object.
639 ///
640 /// * `index` - Indicates a state index.
641 ///
642 /// # Returns
643 ///
644 /// * Returns the error code.
645 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
646 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
647 ///
648 /// Available since API-level: 12
649 #[cfg(feature = "api-12")]
650 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
651 pub fn OH_ArkUI_KeyframeAnimateOption_RegisterOnEventCallback(
652 option: *mut ArkUI_KeyframeAnimateOption,
653 userData: *mut ::core::ffi::c_void,
654 event: ::core::option::Option<unsafe extern "C" fn(userData: *mut ::core::ffi::c_void)>,
655 index: i32,
656 ) -> i32;
657 /// Obtains the overall delay of a keyframe animation
658 ///
659 /// # Arguments
660 ///
661 /// * `option` - Indicates the keyframe animation parameters.
662 ///
663 /// # Returns
664 ///
665 /// * Returns the overall delay.
666 ///
667 /// Available since API-level: 12
668 #[cfg(feature = "api-12")]
669 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
670 pub fn OH_ArkUI_KeyframeAnimateOption_GetDelay(option: *mut ArkUI_KeyframeAnimateOption)
671 -> i32;
672 /// Obtains the number of times that a keyframe animation is played.
673 ///
674 /// # Arguments
675 ///
676 /// * `option` - Indicates the keyframe animation parameters.
677 ///
678 /// # Returns
679 ///
680 /// * Returns the number of times that the animation is played.
681 ///
682 /// Available since API-level: 12
683 #[cfg(feature = "api-12")]
684 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
685 pub fn OH_ArkUI_KeyframeAnimateOption_GetIterations(
686 option: *mut ArkUI_KeyframeAnimateOption,
687 ) -> i32;
688 /// Obtains the expected frame rate range of a keyframe animation configuration.
689 ///
690 /// # Arguments
691 ///
692 /// * `option` - Indicates the pointer to a keyframe animation configuration.
693 ///
694 /// # Returns
695 ///
696 /// * Returns the expected frame rate range of the keyframe animation.
697 ///
698 /// Available since API-level: 19
699 #[cfg(feature = "api-19")]
700 #[cfg_attr(docsrs, doc(cfg(feature = "api-19")))]
701 pub fn OH_ArkUI_KeyframeAnimateOption_GetExpectedFrameRate(
702 option: *mut ArkUI_KeyframeAnimateOption,
703 ) -> *mut ArkUI_ExpectedFrameRateRange;
704 /// Obtains the duration of a specific state in a keyframe animation.
705 ///
706 /// # Arguments
707 ///
708 /// * `option` - Indicates the keyframe animation parameters.
709 ///
710 /// * `index` - Indicates a state index.
711 ///
712 /// # Returns
713 ///
714 /// * Returns the duration. The unit is millisecond.
715 ///
716 /// Available since API-level: 12
717 #[cfg(feature = "api-12")]
718 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
719 pub fn OH_ArkUI_KeyframeAnimateOption_GetDuration(
720 option: *mut ArkUI_KeyframeAnimateOption,
721 index: i32,
722 ) -> i32;
723 /// Obtains the animation curve of a specific state in a keyframe animation.
724 ///
725 /// # Arguments
726 ///
727 /// * `option` - Indicates the keyframe animation parameters.
728 ///
729 /// * `index` - Indicates a state index.
730 ///
731 /// # Returns
732 ///
733 /// * Returns the animated curve.
734 /// Returns <b>NULL</b> if a parameter error occurs.
735 ///
736 /// Available since API-level: 12
737 #[cfg(feature = "api-12")]
738 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
739 pub fn OH_ArkUI_KeyframeAnimateOption_GetCurve(
740 option: *mut ArkUI_KeyframeAnimateOption,
741 index: i32,
742 ) -> ArkUI_CurveHandle;
743 /// Creates an animator parameter object.
744 ///
745 ///
746 /// **Note:** When <b>keyframeSize</b> is greater than 0, the animation interpolation start point is 0, and the animation
747 /// interpolation end point is 1; no setting is allowed.
748 /// # Arguments
749 ///
750 /// * `keyframeSize` - Indicates the number of keyframes.
751 ///
752 /// # Returns
753 ///
754 /// * Returns the pointer to the animator parameter object.
755 /// returns <b>NULL</b> if the value of <b>size</b> is less than 0.
756 ///
757 /// Available since API-level: 12
758 #[cfg(feature = "api-12")]
759 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
760 pub fn OH_ArkUI_AnimatorOption_Create(keyframeSize: i32) -> *mut ArkUI_AnimatorOption;
761 /// Disposes of an animator parameter object.
762 ///
763 /// # Arguments
764 ///
765 /// * `option` - Indicates the target animator parameter object.
766 ///
767 /// Available since API-level: 12
768 #[cfg(feature = "api-12")]
769 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
770 pub fn OH_ArkUI_AnimatorOption_Dispose(option: *mut ArkUI_AnimatorOption);
771 /// Sets the duration for thea nimation of an animator, in milliseconds.
772 ///
773 /// # Arguments
774 ///
775 /// * `option` - Indicates the target animator parameter object.
776 ///
777 /// * `value` - Indicates the playback duration, in milliseconds.
778 ///
779 /// # Returns
780 ///
781 /// * Returns the error code.
782 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
783 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
784 ///
785 /// Available since API-level: 12
786 #[cfg(feature = "api-12")]
787 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
788 pub fn OH_ArkUI_AnimatorOption_SetDuration(
789 option: *mut ArkUI_AnimatorOption,
790 value: i32,
791 ) -> i32;
792 /// Sets the delay for playing the animation of an animator, in milliseconds.
793 ///
794 /// # Arguments
795 ///
796 /// * `option` - Indicates an animator parameter object.
797 ///
798 /// * `value` - Indicates the delay to set, in milliseconds.
799 ///
800 /// # Returns
801 ///
802 /// * Returns the error code.
803 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
804 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
805 ///
806 /// Available since API-level: 12
807 #[cfg(feature = "api-12")]
808 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
809 pub fn OH_ArkUI_AnimatorOption_SetDelay(option: *mut ArkUI_AnimatorOption, value: i32) -> i32;
810 /// Sets the number of times that the animation of an animator is played. The value <b>0</b> means not to play the
811 /// animation, and <b>-1</b> means to play the animation for an unlimited number of times.
812 ///
813 ///
814 /// **Note:** If this parameter is set to a negative value other than <b>-1</b>, the value is invalid. In this case, the
815 /// animation is played once.
816 /// # Arguments
817 ///
818 /// * `option` - Indicates an animator parameter object.
819 ///
820 /// * `value` - Indicates the number of times that the animation is played.
821 ///
822 /// # Returns
823 ///
824 /// * Returns the error code.
825 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
826 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
827 ///
828 /// Available since API-level: 12
829 #[cfg(feature = "api-12")]
830 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
831 pub fn OH_ArkUI_AnimatorOption_SetIterations(
832 option: *mut ArkUI_AnimatorOption,
833 value: i32,
834 ) -> i32;
835 /// Sets whether the animation of an animator is restored to the initial state after being executed.
836 ///
837 /// # Arguments
838 ///
839 /// * `option` - Indicates an animator parameter object.
840 ///
841 /// * `value` - Indicates whether to restore the animation to the initial state after the animation is executed.
842 ///
843 /// # Returns
844 ///
845 /// * Returns the error code.
846 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
847 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
848 ///
849 /// Available since API-level: 12
850 #[cfg(feature = "api-12")]
851 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
852 pub fn OH_ArkUI_AnimatorOption_SetFill(
853 option: *mut ArkUI_AnimatorOption,
854 value: ArkUI_AnimationFillMode,
855 ) -> i32;
856 /// Sets the playback direction for the animation of an animator.
857 ///
858 /// # Arguments
859 ///
860 /// * `option` - Indicates an animator parameter object.
861 ///
862 /// * `value` - Indicates the animation playback direction.
863 ///
864 /// # Returns
865 ///
866 /// * Returns the error code.
867 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
868 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
869 ///
870 /// Available since API-level: 12
871 #[cfg(feature = "api-12")]
872 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
873 pub fn OH_ArkUI_AnimatorOption_SetDirection(
874 option: *mut ArkUI_AnimatorOption,
875 value: ArkUI_AnimationDirection,
876 ) -> i32;
877 /// Sets the interpolation curve for the animation of an animator.
878 ///
879 ///
880 /// **Note:** <b>springCurve</b>, <b>springMotion</b>, <b>responsiveSpringMotion</b>, <b>interpolatingSpring</b>,
881 /// and <b>customCurve</b> curves are not supported.
882 ///
883 /// # Arguments
884 ///
885 /// * `option` - Indicates an animator parameter object.
886 ///
887 /// * `value` - Indicates the target interpolation curve. Default value:ARKUI_CURVE_LINEAR.
888 ///
889 /// # Returns
890 ///
891 /// * Returns the error code.
892 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
893 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
894 ///
895 /// Available since API-level: 12
896 #[cfg(feature = "api-12")]
897 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
898 pub fn OH_ArkUI_AnimatorOption_SetCurve(
899 option: *mut ArkUI_AnimatorOption,
900 value: ArkUI_CurveHandle,
901 ) -> i32;
902 /// Sets the interpolation start point for the animation of an animator.
903 ///
904 /// **Note:** This API does not take effect when the animation is a keyframe animation.
905 ///
906 /// # Arguments
907 ///
908 /// * `option` - Indicates an animator parameter object.
909 ///
910 /// * `value` - Indicates the interpolation start point to set.
911 ///
912 /// # Returns
913 ///
914 /// * Returns the error code.
915 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
916 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
917 ///
918 /// Available since API-level: 12
919 #[cfg(feature = "api-12")]
920 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
921 pub fn OH_ArkUI_AnimatorOption_SetBegin(option: *mut ArkUI_AnimatorOption, value: f32) -> i32;
922 /// Sets the interpolation end point for the animation of an animator.
923 ///
924 /// **Note:** This API does not take effect when the animation is a keyframe animation.
925 ///
926 /// # Arguments
927 ///
928 /// * `option` - Indicates an animator parameter object.
929 ///
930 /// * `value` - Indicates the interpolation end point to set.
931 ///
932 /// # Returns
933 ///
934 /// * Returns the error code.
935 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
936 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
937 ///
938 /// Available since API-level: 12
939 #[cfg(feature = "api-12")]
940 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
941 pub fn OH_ArkUI_AnimatorOption_SetEnd(option: *mut ArkUI_AnimatorOption, value: f32) -> i32;
942 /// Sets the expected frame rate range for the animation of an animator.
943 ///
944 /// # Arguments
945 ///
946 /// * `option` - Indicates an animator parameter object.
947 ///
948 /// * `value` - Indicates the expected frame rate range to set.
949 ///
950 /// # Returns
951 ///
952 /// * Returns the error code.
953 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
954 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
955 ///
956 /// Available since API-level: 12
957 #[cfg(feature = "api-12")]
958 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
959 pub fn OH_ArkUI_AnimatorOption_SetExpectedFrameRateRange(
960 option: *mut ArkUI_AnimatorOption,
961 value: *mut ArkUI_ExpectedFrameRateRange,
962 ) -> i32;
963 /// Sets the keyframe parameters for the animation of an animator.
964 ///
965 /// # Arguments
966 ///
967 /// * `option` - Indicates an animator parameter object.
968 ///
969 /// * `time` - Indicates the keyframe time. Value range: [0,1].
970 ///
971 /// * `value` - Indicates the keyframe value.
972 ///
973 /// * `index` - Indicates the keyframe index.
974 ///
975 /// # Returns
976 ///
977 /// * Returns the error code.
978 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
979 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
980 ///
981 /// Available since API-level: 12
982 #[cfg(feature = "api-12")]
983 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
984 pub fn OH_ArkUI_AnimatorOption_SetKeyframe(
985 option: *mut ArkUI_AnimatorOption,
986 time: f32,
987 value: f32,
988 index: i32,
989 ) -> i32;
990 /// Sets the keyframe curve type for the animation of an animator.
991 ///
992 ///
993 /// **Note:** <b>springCurve</b>, <b>springMotion</b>, <b>responsiveSpringMotion</b>, <b>interpolatingSpring</b>,
994 /// and <b>customCurve</b> curves are not supported.
995 ///
996 /// # Arguments
997 ///
998 /// * `option` - Indicates an animator parameter object.
999 ///
1000 /// * `value` - Indicates the target interpolation curve.
1001 ///
1002 /// * `index` - Indicates the keyframe index.
1003 ///
1004 /// # Returns
1005 ///
1006 /// * Returns the error code.
1007 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
1008 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
1009 ///
1010 /// Available since API-level: 12
1011 #[cfg(feature = "api-12")]
1012 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1013 pub fn OH_ArkUI_AnimatorOption_SetKeyframeCurve(
1014 option: *mut ArkUI_AnimatorOption,
1015 value: ArkUI_CurveHandle,
1016 index: i32,
1017 ) -> i32;
1018 /// Obtains the duration for playing an animation.
1019 ///
1020 /// # Arguments
1021 ///
1022 /// * `option` - Indicates the animator parameters.
1023 ///
1024 /// # Returns
1025 ///
1026 /// * Returns the duration for playing the animation, in milliseconds.
1027 ///
1028 /// Available since API-level: 12
1029 #[cfg(feature = "api-12")]
1030 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1031 pub fn OH_ArkUI_AnimatorOption_GetDuration(option: *mut ArkUI_AnimatorOption) -> i32;
1032 /// Obtains the delay for playing the animation of an animator.
1033 ///
1034 /// # Arguments
1035 ///
1036 /// * `option` - Indicates the animator parameters.
1037 ///
1038 /// # Returns
1039 ///
1040 /// * Returns the delay for playing the animation, in milliseconds.
1041 ///
1042 /// Available since API-level: 12
1043 #[cfg(feature = "api-12")]
1044 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1045 pub fn OH_ArkUI_AnimatorOption_GetDelay(option: *mut ArkUI_AnimatorOption) -> i32;
1046 /// Obtains the number of times that an animation is played.
1047 ///
1048 /// # Arguments
1049 ///
1050 /// * `option` - Animator animation parameter.
1051 ///
1052 /// # Returns
1053 ///
1054 /// * Returns the number of times that the animation is played.
1055 ///
1056 /// Available since API-level: 12
1057 #[cfg(feature = "api-12")]
1058 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1059 pub fn OH_ArkUI_AnimatorOption_GetIterations(option: *mut ArkUI_AnimatorOption) -> i32;
1060 /// Obtains whether the animator animation is restored to the initial state after being executed.
1061 ///
1062 /// # Arguments
1063 ///
1064 /// * `option` - Indicates the animator parameters.
1065 ///
1066 /// # Returns
1067 ///
1068 /// * Returns whether the animator animation is restored to the initial state after being executed.
1069 ///
1070 /// Available since API-level: 12
1071 #[cfg(feature = "api-12")]
1072 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1073 pub fn OH_ArkUI_AnimatorOption_GetFill(
1074 option: *mut ArkUI_AnimatorOption,
1075 ) -> ArkUI_AnimationFillMode;
1076 /// Obtains the playback direction of an animation.
1077 ///
1078 /// # Arguments
1079 ///
1080 /// * `option` - Indicates the animator parameters.
1081 ///
1082 /// # Returns
1083 ///
1084 /// * Returns the animation playback direction.
1085 ///
1086 /// Available since API-level: 12
1087 #[cfg(feature = "api-12")]
1088 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1089 pub fn OH_ArkUI_AnimatorOption_GetDirection(
1090 option: *mut ArkUI_AnimatorOption,
1091 ) -> ArkUI_AnimationDirection;
1092 /// Obtains the interpolation curve of the animation of an animator.
1093 ///
1094 /// # Arguments
1095 ///
1096 /// * `option` - Indicates the animator parameters.
1097 ///
1098 /// # Returns
1099 ///
1100 /// * Returns the interpolation curve of the animation.
1101 /// Returns <b>NULL</b> if a parameter error occurs.
1102 ///
1103 /// Available since API-level: 12
1104 #[cfg(feature = "api-12")]
1105 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1106 pub fn OH_ArkUI_AnimatorOption_GetCurve(option: *mut ArkUI_AnimatorOption)
1107 -> ArkUI_CurveHandle;
1108 /// Obtains the interpolation start point of an animation.
1109 ///
1110 /// # Arguments
1111 ///
1112 /// * `option` - Indicates the animator parameters.
1113 ///
1114 /// # Returns
1115 ///
1116 /// * Returns the interpolation start point of the animation.
1117 ///
1118 /// Available since API-level: 12
1119 #[cfg(feature = "api-12")]
1120 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1121 pub fn OH_ArkUI_AnimatorOption_GetBegin(option: *mut ArkUI_AnimatorOption) -> f32;
1122 /// Obtains the interpolation end point of an animation.
1123 ///
1124 /// # Arguments
1125 ///
1126 /// * `option` - Indicates the animator parameters.
1127 ///
1128 /// # Returns
1129 ///
1130 /// * Returns the interpolation end point of the animation.
1131 ///
1132 /// Available since API-level: 12
1133 #[cfg(feature = "api-12")]
1134 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1135 pub fn OH_ArkUI_AnimatorOption_GetEnd(option: *mut ArkUI_AnimatorOption) -> f32;
1136 /// Obtains the expected frame rate range of an animation.
1137 ///
1138 /// # Arguments
1139 ///
1140 /// * `option` - Indicates the animator parameters.
1141 ///
1142 /// # Returns
1143 ///
1144 /// * Returns the pointer to the expected frame rate range object.
1145 /// Returns <b>NULL</b> if a parameter error occurs.
1146 ///
1147 /// Available since API-level: 12
1148 #[cfg(feature = "api-12")]
1149 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1150 pub fn OH_ArkUI_AnimatorOption_GetExpectedFrameRateRange(
1151 option: *mut ArkUI_AnimatorOption,
1152 ) -> *mut ArkUI_ExpectedFrameRateRange;
1153 /// Obtains the keyframe time of an animation.
1154 ///
1155 /// # Arguments
1156 ///
1157 /// * `option` - Indicates an animator parameter object.
1158 ///
1159 /// * `index` - Indicates the keyframe index.
1160 ///
1161 /// # Returns
1162 ///
1163 /// * Returns the keyframe time.
1164 ///
1165 /// Available since API-level: 12
1166 #[cfg(feature = "api-12")]
1167 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1168 pub fn OH_ArkUI_AnimatorOption_GetKeyframeTime(
1169 option: *mut ArkUI_AnimatorOption,
1170 index: i32,
1171 ) -> f32;
1172 /// Obtains the keyframe value of an animation.
1173 ///
1174 /// # Arguments
1175 ///
1176 /// * `option` - Indicates an animator parameter object.
1177 ///
1178 /// * `index` - Indicates the keyframe index.
1179 ///
1180 /// # Returns
1181 ///
1182 /// * Returns the keyframe value.
1183 ///
1184 /// Available since API-level: 12
1185 #[cfg(feature = "api-12")]
1186 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1187 pub fn OH_ArkUI_AnimatorOption_GetKeyframeValue(
1188 option: *mut ArkUI_AnimatorOption,
1189 index: i32,
1190 ) -> f32;
1191 /// Obtains the interpolation curve for a keyframe in the animation of an animator.
1192 ///
1193 /// # Arguments
1194 ///
1195 /// * `option` - Indicates an animator parameter object.
1196 ///
1197 /// * `index` - Indicates the keyframe index.
1198 ///
1199 /// # Returns
1200 ///
1201 /// * Returns the interpolation curve.
1202 /// Returns <b>NULL</b> if a parameter error occurs.
1203 ///
1204 /// Available since API-level: 12
1205 #[cfg(feature = "api-12")]
1206 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1207 pub fn OH_ArkUI_AnimatorOption_GetKeyframeCurve(
1208 option: *mut ArkUI_AnimatorOption,
1209 index: i32,
1210 ) -> ArkUI_CurveHandle;
1211 /// Obtains the custom object in an animation event object.
1212 ///
1213 /// # Arguments
1214 ///
1215 /// * `event` - Indicates an animation event object.
1216 ///
1217 /// # Returns
1218 ///
1219 /// * Returns the custom object.
1220 /// Returns <b>NULL</b> if a parameter error occurs.
1221 ///
1222 /// Available since API-level: 12
1223 #[cfg(feature = "api-12")]
1224 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1225 pub fn OH_ArkUI_AnimatorEvent_GetUserData(
1226 event: *mut ArkUI_AnimatorEvent,
1227 ) -> *mut ::core::ffi::c_void;
1228 /// Obtains the custom object in an animation event object.
1229 ///
1230 /// # Arguments
1231 ///
1232 /// * `event` - Indicates an animation event object.
1233 ///
1234 /// # Returns
1235 ///
1236 /// * Returns the custom object.
1237 ///
1238 /// Available since API-level: 12
1239 #[cfg(feature = "api-12")]
1240 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1241 pub fn OH_ArkUI_AnimatorOnFrameEvent_GetUserData(
1242 event: *mut ArkUI_AnimatorOnFrameEvent,
1243 ) -> *mut ::core::ffi::c_void;
1244 /// Obtains the current progress in an animation event object.
1245 ///
1246 /// # Arguments
1247 ///
1248 /// * `event` - Indicates an animation event object.
1249 ///
1250 /// # Returns
1251 ///
1252 /// * Returns the animation progress.
1253 ///
1254 /// Available since API-level: 12
1255 #[cfg(feature = "api-12")]
1256 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1257 pub fn OH_ArkUI_AnimatorOnFrameEvent_GetValue(event: *mut ArkUI_AnimatorOnFrameEvent) -> f32;
1258 /// Sets the callback invoked when the animator receives a frame.
1259 ///
1260 /// # Arguments
1261 ///
1262 /// * `option` - Indicates an animator parameter object.
1263 ///
1264 /// * `userData` - Indicates the custom parameter.
1265 ///
1266 /// * `callback` - Indicates the callback to set.
1267 ///
1268 /// # Returns
1269 ///
1270 /// * Returns the error code.
1271 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
1272 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
1273 ///
1274 /// Available since API-level: 12
1275 #[cfg(feature = "api-12")]
1276 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1277 pub fn OH_ArkUI_AnimatorOption_RegisterOnFrameCallback(
1278 option: *mut ArkUI_AnimatorOption,
1279 userData: *mut ::core::ffi::c_void,
1280 callback: ::core::option::Option<
1281 unsafe extern "C" fn(event: *mut ArkUI_AnimatorOnFrameEvent),
1282 >,
1283 ) -> i32;
1284 /// Sets the callback invoked when the animation playback is complete.
1285 ///
1286 /// # Arguments
1287 ///
1288 /// * `option` - Indicates an animator parameter object.
1289 ///
1290 /// * `userData` - Indicates the custom parameter.
1291 ///
1292 /// * `callback` - Indicates the callback to set.
1293 ///
1294 /// # Returns
1295 ///
1296 /// * Returns the error code.
1297 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
1298 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
1299 ///
1300 /// Available since API-level: 12
1301 #[cfg(feature = "api-12")]
1302 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1303 pub fn OH_ArkUI_AnimatorOption_RegisterOnFinishCallback(
1304 option: *mut ArkUI_AnimatorOption,
1305 userData: *mut ::core::ffi::c_void,
1306 callback: ::core::option::Option<unsafe extern "C" fn(event: *mut ArkUI_AnimatorEvent)>,
1307 ) -> i32;
1308 /// Sets the callback invoked when the animation playback is canceled.
1309 ///
1310 /// # Arguments
1311 ///
1312 /// * `option` - Indicates an animator parameter object.
1313 ///
1314 /// * `userData` - Indicates the custom parameter.
1315 ///
1316 /// * `callback` - Indicates the callback to set.
1317 ///
1318 /// # Returns
1319 ///
1320 /// * Returns the error code.
1321 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
1322 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
1323 ///
1324 /// Available since API-level: 12
1325 #[cfg(feature = "api-12")]
1326 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1327 pub fn OH_ArkUI_AnimatorOption_RegisterOnCancelCallback(
1328 option: *mut ArkUI_AnimatorOption,
1329 userData: *mut ::core::ffi::c_void,
1330 callback: ::core::option::Option<unsafe extern "C" fn(event: *mut ArkUI_AnimatorEvent)>,
1331 ) -> i32;
1332 /// Sets the callback invoked when the animation playback is repeated.
1333 ///
1334 /// # Arguments
1335 ///
1336 /// * `option` - Indicates an animator parameter object.
1337 ///
1338 /// * `userData` - Indicates the custom parameter.
1339 ///
1340 /// * `callback` - Indicates the callback to set.
1341 ///
1342 /// # Returns
1343 ///
1344 /// * Returns the error code.
1345 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
1346 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
1347 ///
1348 /// Available since API-level: 12
1349 #[cfg(feature = "api-12")]
1350 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1351 pub fn OH_ArkUI_AnimatorOption_RegisterOnRepeatCallback(
1352 option: *mut ArkUI_AnimatorOption,
1353 userData: *mut ::core::ffi::c_void,
1354 callback: ::core::option::Option<unsafe extern "C" fn(event: *mut ArkUI_AnimatorEvent)>,
1355 ) -> i32;
1356 /// Resets the animation of an animator.
1357 ///
1358 /// # Arguments
1359 ///
1360 /// * `animatorHandle` - Indicates an animator object.
1361 ///
1362 /// * `option` - Indicates the animator parameters.
1363 ///
1364 /// # Returns
1365 ///
1366 /// * Returns the error code.
1367 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
1368 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
1369 ///
1370 /// Available since API-level: 12
1371 #[cfg(feature = "api-12")]
1372 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1373 pub fn OH_ArkUI_Animator_ResetAnimatorOption(
1374 animatorHandle: ArkUI_AnimatorHandle,
1375 option: *mut ArkUI_AnimatorOption,
1376 ) -> i32;
1377 /// Starts the animation of an animator.
1378 ///
1379 /// # Arguments
1380 ///
1381 /// * `animatorHandle` - Indicates an animator object.
1382 ///
1383 /// # Returns
1384 ///
1385 /// * Returns the error code.
1386 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
1387 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
1388 ///
1389 /// Available since API-level: 12
1390 #[cfg(feature = "api-12")]
1391 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1392 pub fn OH_ArkUI_Animator_Play(animatorHandle: ArkUI_AnimatorHandle) -> i32;
1393 /// Ends the animation of an animator.
1394 ///
1395 /// # Arguments
1396 ///
1397 /// * `animatorHandle` - Indicates an animator object.
1398 ///
1399 /// # Returns
1400 ///
1401 /// * Returns the error code.
1402 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
1403 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
1404 ///
1405 /// Available since API-level: 12
1406 #[cfg(feature = "api-12")]
1407 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1408 pub fn OH_ArkUI_Animator_Finish(animatorHandle: ArkUI_AnimatorHandle) -> i32;
1409 /// Pauses the animation of an animator.
1410 ///
1411 /// # Arguments
1412 ///
1413 /// * `animatorHandle` - Indicates an animator object.
1414 ///
1415 /// # Returns
1416 ///
1417 /// * Returns the error code.
1418 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
1419 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
1420 ///
1421 /// Available since API-level: 12
1422 #[cfg(feature = "api-12")]
1423 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1424 pub fn OH_ArkUI_Animator_Pause(animatorHandle: ArkUI_AnimatorHandle) -> i32;
1425 /// Cancels the animation of an animator.
1426 ///
1427 /// # Arguments
1428 ///
1429 /// * `animatorHandle` - Indicates an animator object.
1430 ///
1431 /// # Returns
1432 ///
1433 /// * Returns the error code.
1434 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
1435 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
1436 ///
1437 /// Available since API-level: 12
1438 #[cfg(feature = "api-12")]
1439 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1440 pub fn OH_ArkUI_Animator_Cancel(animatorHandle: ArkUI_AnimatorHandle) -> i32;
1441 /// Plays the animation of an animator in reverse order.
1442 ///
1443 /// # Arguments
1444 ///
1445 /// * `animatorHandle` - Indicates an animator object.
1446 ///
1447 /// # Returns
1448 ///
1449 /// * Returns the error code.
1450 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
1451 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
1452 ///
1453 /// Available since API-level: 12
1454 #[cfg(feature = "api-12")]
1455 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1456 pub fn OH_ArkUI_Animator_Reverse(animatorHandle: ArkUI_AnimatorHandle) -> i32;
1457 /// Implements initialization for the interpolation curve, which is used to create an interpolation curve based on
1458 /// the input parameter.
1459 ///
1460 /// # Arguments
1461 ///
1462 /// * `curve` - Indicates the curve type.
1463 ///
1464 /// # Returns
1465 ///
1466 /// * Returns the pointer to the interpolation object of the curve.
1467 /// Returns <b>NULL</b> if a parameter error occurs.
1468 ///
1469 /// Available since API-level: 12
1470 #[cfg(feature = "api-12")]
1471 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1472 pub fn OH_ArkUI_Curve_CreateCurveByType(curve: ArkUI_AnimationCurve) -> ArkUI_CurveHandle;
1473 /// Creates a step curve.
1474 ///
1475 /// # Arguments
1476 ///
1477 /// * `count` - Indicates the number of steps. The value must be a positive integer. Value range: [1, +∞).
1478 ///
1479 /// * `end` - Indicates whether jumping occurs when the interpolation ends.
1480 /// <b>true</b>: Jumping occurs when the interpolation ends. <b>false</b>: Jumping occurs when the interpolation starts.
1481 ///
1482 /// # Returns
1483 ///
1484 /// * Returns the pointer to the interpolation object of the curve.
1485 /// Returns <b>NULL</b> if a parameter error occurs.
1486 ///
1487 /// Available since API-level: 12
1488 #[cfg(feature = "api-12")]
1489 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1490 pub fn OH_ArkUI_Curve_CreateStepsCurve(count: i32, end: bool) -> ArkUI_CurveHandle;
1491 /// Creates a cubic Bezier curve.
1492 ///
1493 ///
1494 /// # Arguments
1495 ///
1496 /// * `x1` - Indicates the X coordinate of the first point on the Bezier curve. Value range: [0, 1].
1497 /// A value less than 0 is handed as <b>0</b>. A value greater than 1 is handed as <b>1</b>.
1498 ///
1499 /// * `y1` - Indicates the Y coordinate of the first point on the Bezier curve.
1500 ///
1501 /// * `x2` - Indicates the X coordinate of the second point on the Bezier curve. Value range: [0, 1].
1502 /// A value less than 0 is handed as <b>0</b>. A value greater than 1 is handed as <b>1</b>.
1503 ///
1504 /// * `y2` - Indicates the Y coordinate of the second point on the Bezier curve.
1505 ///
1506 /// # Returns
1507 ///
1508 /// * Returns the pointer to the interpolation object of the curve.
1509 /// Returns <b>NULL</b> if a parameter error occurs.
1510 ///
1511 /// Available since API-level: 12
1512 #[cfg(feature = "api-12")]
1513 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1514 pub fn OH_ArkUI_Curve_CreateCubicBezierCurve(
1515 x1: f32,
1516 y1: f32,
1517 x2: f32,
1518 y2: f32,
1519 ) -> ArkUI_CurveHandle;
1520 /// Creates a spring curve. The curve shape is subject to the spring parameters, and the animation duration is
1521 /// subject to the <b>duration</b> parameter in <b>animation</b> and <b>animateTo</b>.
1522 ///
1523 /// # Arguments
1524 ///
1525 /// * `velocity` - Indicates the initial velocity of the spring. It is applied by external factors to the spring
1526 /// animation, designed to help ensure the smooth transition from the previous motion state. The velocity is the
1527 /// normalized velocity, and its value is equal to the actual velocity at the beginning of the animation divided by the
1528 /// animation attribute change value.
1529 ///
1530 /// * `mass` - Indicates the mass, which influences the inertia in the spring system. The greater the mass, the greater
1531 /// the amplitude of the oscillation, and the slower the speed of restoring to the equilibrium position.
1532 ///
1533 /// * `stiffness` - Indicates the stiffness. It is the degree to which an object deforms by resisting the force applied.
1534 /// In an elastic system, the greater the stiffness, the stronger the ability to resist deformation, and the faster the
1535 /// speed of restoring to the equilibrium position.
1536 ///
1537 /// * `damping` - Indicates the damping. It is used to describe the oscillation and attenuation of the system after
1538 /// being disturbed. The larger the damping, the smaller the number of oscillations of elastic motion, and the smaller
1539 /// the oscillation amplitude.
1540 ///
1541 /// # Returns
1542 ///
1543 /// * Returns the pointer to the interpolation object of the curve.
1544 /// Returns <b>NULL</b> if a parameter error occurs.
1545 ///
1546 /// Available since API-level: 12
1547 #[cfg(feature = "api-12")]
1548 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1549 pub fn OH_ArkUI_Curve_CreateSpringCurve(
1550 velocity: f32,
1551 mass: f32,
1552 stiffness: f32,
1553 damping: f32,
1554 ) -> ArkUI_CurveHandle;
1555 /// Creates a spring animation curve. If multiple spring animations are applied to the same attribute of an
1556 /// object, each animation replaces their predecessor and inherits the velocity.
1557 ///
1558 /// **Note:** The animation duration is subject to the curve parameters, rather than the <b>duration</b> parameter in
1559 /// <b>animation</b> or <b>animateTo</b>.
1560 ///
1561 /// # Arguments
1562 ///
1563 /// * `response` - Indicates the duration of one complete oscillation.
1564 ///
1565 /// * `dampingFraction` - Indicates the damping coefficient.
1566 /// > 0 and < 1: underdamped. In this case, the spring overshoots the equilibrium position.
1567 /// <b>1</b>: critically damped.
1568 /// > 1: overdamped. In this case, the spring approaches equilibrium gradually.
1569 ///
1570 /// * `overlapDuration` - Indicates the duration for animations to overlap. When animations overlap, the <b>response</b>
1571 /// values of these animations will
1572 /// transit smoothly over this duration if they are different.
1573 ///
1574 /// # Returns
1575 ///
1576 /// * Returns the pointer to the interpolation object of the curve.
1577 /// Returns <b>NULL</b> if a parameter error occurs.
1578 ///
1579 /// Available since API-level: 12
1580 #[cfg(feature = "api-12")]
1581 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1582 pub fn OH_ArkUI_Curve_CreateSpringMotion(
1583 response: f32,
1584 dampingFraction: f32,
1585 overlapDuration: f32,
1586 ) -> ArkUI_CurveHandle;
1587 /// Creates a responsive spring animation curve. It is a special case of <b>springMotion</b>, with the only
1588 /// difference in the default values. It can be used together with <b>springMotion</b>.
1589 ///
1590 /// **Note:** The animation duration is subject to the curve parameters, rather than the <b>duration</b> parameter in
1591 /// <b>animation</b> or <b>animateTo</b>.
1592 ///
1593 /// # Arguments
1594 ///
1595 /// * `response` - Indicates the duration of one complete oscillation.
1596 ///
1597 /// * `dampingFraction` - Indicates the damping coefficient.
1598 /// > 0 and < 1: underdamped. In this case, the spring overshoots the equilibrium position.
1599 /// <b>1</b>: critically damped.
1600 /// > 1: overdamped. In this case, the spring approaches equilibrium gradually.
1601 ///
1602 /// * `overlapDuration` - Indicates the duration for animations to overlap. When animations overlap, the
1603 /// <b>response</b> values of these animations will
1604 /// transit smoothly over this duration if they are different.
1605 ///
1606 /// # Returns
1607 ///
1608 /// * Returns the pointer to the interpolation object of the curve.
1609 /// Returns <b>NULL</b> if a parameter error occurs.
1610 ///
1611 /// Available since API-level: 12
1612 #[cfg(feature = "api-12")]
1613 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1614 pub fn OH_ArkUI_Curve_CreateResponsiveSpringMotion(
1615 response: f32,
1616 dampingFraction: f32,
1617 overlapDuration: f32,
1618 ) -> ArkUI_CurveHandle;
1619 /// Creates an interpolating spring curve animated from 0 to 1. The actual animation value is calculated based on
1620 /// the curve.
1621 ///
1622 /// **Note:** The animation duration is subject to the curve parameters, rather than the <b>duration</b> parameter in
1623 /// <b>animation</b> or <b>animateTo</b>.
1624 ///
1625 ///
1626 /// # Arguments
1627 ///
1628 /// * `velocity` - Indicates the initial velocity of the spring. It is applied by external factors to the spring
1629 /// animation, esigned to help ensure the smooth transition from the previous motion state. The velocity is the
1630 /// normalized velocity, and its value is equal to the actual velocity
1631 /// at the beginning of the animation divided by the animation attribute change value.
1632 ///
1633 /// * `mass` - Indicates the mass, which influences the inertia in the spring system.
1634 /// The greater the mass, the greater the amplitude of the oscillation, and the slower the speed of restoring to the
1635 /// equilibrium position.
1636 ///
1637 /// * `stiffness` - Indicates the stiffness. It is the degree to which an object deforms by resisting the force applied.
1638 /// In an elastic system, the greater the stiffness, the stronger the ability to resist deformation, and the faster the
1639 /// speed of restoring to the equilibrium position.
1640 ///
1641 /// * `damping` - Indicates the damping. It is used to describe the oscillation and attenuation of the system after
1642 /// being disturbed. The larger the damping, the smaller the number of oscillations of elastic motion, and the smaller
1643 /// the oscillation amplitude.
1644 ///
1645 /// # Returns
1646 ///
1647 /// * Returns the pointer to the interpolation object of the curve.
1648 /// Returns <b>NULL</b> if a parameter error occurs.
1649 ///
1650 /// Available since API-level: 12
1651 #[cfg(feature = "api-12")]
1652 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1653 pub fn OH_ArkUI_Curve_CreateInterpolatingSpring(
1654 velocity: f32,
1655 mass: f32,
1656 stiffness: f32,
1657 damping: f32,
1658 ) -> ArkUI_CurveHandle;
1659 /// Creates a custom curve.
1660 ///
1661 /// # Arguments
1662 ///
1663 /// * `userData` - Indicates the custom data.
1664 ///
1665 /// * `interpolate` - Indicates the custom interpolation callback. <b>fraction</b> indicates the input x value for
1666 /// interpolation when the animation starts; value range: [0,1].
1667 /// The return value is the y value of the curve; value range: [0,1].
1668 /// If <b>fraction</b> is <b>0</b>, the return value <b>0</b> corresponds to the animation start point; any other return
1669 /// value means that the animation jumps at the start point.
1670 /// If <b>fraction</b> is <b>1</b>, the return value <b>1</b> corresponds to the animation end point; any other return
1671 /// value means that the end value of the animation is not the value of the state variable,
1672 /// which will result in an effect of transition from that end value to the value of the state variable.
1673 ///
1674 /// # Returns
1675 ///
1676 /// * Returns the pointer to the interpolation object of the curve.
1677 /// Returns <b>NULL</b> if a parameter error occurs.
1678 ///
1679 /// Available since API-level: 12
1680 #[cfg(feature = "api-12")]
1681 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1682 pub fn OH_ArkUI_Curve_CreateCustomCurve(
1683 userData: *mut ::core::ffi::c_void,
1684 interpolate: ::core::option::Option<
1685 unsafe extern "C" fn(fraction: f32, userdata: *mut ::core::ffi::c_void) -> f32,
1686 >,
1687 ) -> ArkUI_CurveHandle;
1688 /// Disposes of a custom curve.
1689 ///
1690 /// # Arguments
1691 ///
1692 /// * `curveHandle` - Indicates the pointer to the interpolation object of the curve.
1693 ///
1694 /// Available since API-level: 12
1695 #[cfg(feature = "api-12")]
1696 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1697 pub fn OH_ArkUI_Curve_DisposeCurve(curveHandle: ArkUI_CurveHandle);
1698 /// Creates an opacity object for component transition.
1699 ///
1700 ///
1701 /// **Note:** If the value specified is less than 0, the value <b>0</b> is used. If the value specified is greater than 1,
1702 /// the value <b>1</b> is used.
1703 /// # Arguments
1704 ///
1705 /// * `opacity` - Indicates the opacity. Value range: [0, 1].
1706 ///
1707 /// # Returns
1708 ///
1709 /// * Returns the created opacity object for component transition.
1710 ///
1711 /// Available since API-level: 12
1712 #[cfg(feature = "api-12")]
1713 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1714 pub fn OH_ArkUI_CreateOpacityTransitionEffect(opacity: f32) -> *mut ArkUI_TransitionEffect;
1715 /// Creates a translation object for component transition.
1716 ///
1717 /// # Arguments
1718 ///
1719 /// * `translate` - Indicates the translation settings for component transition.
1720 ///
1721 /// # Returns
1722 ///
1723 /// * Returns the translation object created for component transition.
1724 /// Returns <b>NULL</b> if a parameter error occurs.
1725 ///
1726 /// Available since API-level: 12
1727 #[cfg(feature = "api-12")]
1728 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1729 pub fn OH_ArkUI_CreateTranslationTransitionEffect(
1730 translate: *mut ArkUI_TranslationOptions,
1731 ) -> *mut ArkUI_TransitionEffect;
1732 /// Creates a scaling object for component transition.
1733 ///
1734 /// # Arguments
1735 ///
1736 /// * `scale` - Indicates the scaling settings for component transition.
1737 ///
1738 /// # Returns
1739 ///
1740 /// * Returns the scaling object created for component transition.
1741 /// Returns <b>NULL</b> if a parameter error occurs.
1742 ///
1743 /// Available since API-level: 12
1744 #[cfg(feature = "api-12")]
1745 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1746 pub fn OH_ArkUI_CreateScaleTransitionEffect(
1747 scale: *mut ArkUI_ScaleOptions,
1748 ) -> *mut ArkUI_TransitionEffect;
1749 /// Creates a rotation object for component transition.
1750 ///
1751 /// # Arguments
1752 ///
1753 /// * `rotate` - Indicates the rotation settings for component transition.
1754 ///
1755 /// # Returns
1756 ///
1757 /// * Returns the rotation object created for component transition.
1758 /// Returns <b>NULL</b> if a parameter error occurs.
1759 ///
1760 /// Available since API-level: 12
1761 #[cfg(feature = "api-12")]
1762 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1763 pub fn OH_ArkUI_CreateRotationTransitionEffect(
1764 rotate: *mut ArkUI_RotationOptions,
1765 ) -> *mut ArkUI_TransitionEffect;
1766 /// Creates a movement object for component transition.
1767 ///
1768 /// # Arguments
1769 ///
1770 /// * `edge` - Indicates the movement type.
1771 ///
1772 /// # Returns
1773 ///
1774 /// * Returns the movement object created for component transition.
1775 /// Returns <b>NULL</b> if a parameter error occurs.
1776 ///
1777 /// Available since API-level: 12
1778 #[cfg(feature = "api-12")]
1779 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1780 pub fn OH_ArkUI_CreateMovementTransitionEffect(
1781 edge: ArkUI_TransitionEdge,
1782 ) -> *mut ArkUI_TransitionEffect;
1783 /// Creates an asymmetric transition effect.
1784 ///
1785 ///
1786 /// **Note:** If the <b>asymmetric</b> function is not used for <b>TransitionEffect</b>, the transition effect takes effect
1787 /// for both appearance and disappearance of the component.
1788 /// # Arguments
1789 ///
1790 /// * `appear` - Indicates the transition effect for appearance.
1791 ///
1792 /// * `disappear` - Indicates the transition effect for disappearance.
1793 ///
1794 /// # Returns
1795 ///
1796 /// * Returns the asymmetric transition effect.
1797 /// Returns <b>NULL</b> if a parameter error occurs.
1798 ///
1799 /// Available since API-level: 12
1800 #[cfg(feature = "api-12")]
1801 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1802 pub fn OH_ArkUI_CreateAsymmetricTransitionEffect(
1803 appear: *mut ArkUI_TransitionEffect,
1804 disappear: *mut ArkUI_TransitionEffect,
1805 ) -> *mut ArkUI_TransitionEffect;
1806 /// Disposes of a transition effect.
1807 ///
1808 /// # Arguments
1809 ///
1810 /// * `effect` - Indicates the transition effect to dispose of.
1811 ///
1812 /// Available since API-level: 12
1813 #[cfg(feature = "api-12")]
1814 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1815 pub fn OH_ArkUI_TransitionEffect_Dispose(effect: *mut ArkUI_TransitionEffect);
1816 /// Sets a combination of transition effects.
1817 ///
1818 /// # Arguments
1819 ///
1820 /// * `firstEffect` - Indicates the transition effect options.
1821 ///
1822 /// * `secondEffect` - Indicates the combination of transition effects.
1823 ///
1824 /// # Returns
1825 ///
1826 /// * Returns the error code.
1827 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
1828 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
1829 ///
1830 /// Available since API-level: 12
1831 #[cfg(feature = "api-12")]
1832 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1833 pub fn OH_ArkUI_TransitionEffect_Combine(
1834 firstEffect: *mut ArkUI_TransitionEffect,
1835 secondEffect: *mut ArkUI_TransitionEffect,
1836 ) -> i32;
1837 /// Sets transition effect animation settings.
1838 ///
1839 ///
1840 /// **Note:** If <b>combine</b> is used for combining transition effects, the animation settings of a transition effect are
1841 /// applicable to the one following it.
1842 /// # Arguments
1843 ///
1844 /// * `effect` - Indicates the transition effect options.
1845 ///
1846 /// * `animation` - Indicates the animation settings.
1847 ///
1848 /// # Returns
1849 ///
1850 /// * Returns the error code.
1851 /// Returns [`ARKUI_ERROR_CODE_NO_ERROR`] if the operation is successful.
1852 /// Returns [`ARKUI_ERROR_CODE_PARAM_INVALID`] if a parameter error occurs.
1853 ///
1854 /// Available since API-level: 12
1855 #[cfg(feature = "api-12")]
1856 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1857 pub fn OH_ArkUI_TransitionEffect_SetAnimation(
1858 effect: *mut ArkUI_TransitionEffect,
1859 animation: *mut ArkUI_AnimateOption,
1860 ) -> i32;
1861}