Loading...
Searching...
No Matches
animation_manager.h
1#pragma once
2
3#include <gui/view.h>
4#include <gui/icon_i.h>
5#include <stdint.h>
6#include <dolphin/dolphin.h>
7
9
10typedef struct {
11 uint8_t x;
12 uint8_t y;
13 const char* text;
14 Align align_h;
15 Align align_v;
16} Bubble;
17
18typedef struct FrameBubble {
19 Bubble bubble;
20 uint8_t start_frame;
21 uint8_t end_frame;
22 const struct FrameBubble* next_bubble;
24
25typedef struct {
26 const FrameBubble* const* frame_bubble_sequences;
27 uint8_t frame_bubble_sequences_count;
28 const Icon icon_animation;
29 const uint8_t* frame_order;
30 uint8_t passive_frames;
31 uint8_t active_frames;
32 uint8_t active_cycles;
33 uint16_t duration;
34 uint16_t active_cooldown;
36
37typedef void (*AnimationManagerSetNewIdleAnimationCallback)(void* context);
38typedef void (*AnimationManagerCheckBlockingCallback)(void* context);
39typedef void (*AnimationManagerInteractCallback)(void*);
40
46AnimationManager* animation_manager_alloc(void);
47
53void animation_manager_free(AnimationManager* animation_manager);
54
61View* animation_manager_get_animation_view(AnimationManager* animation_manager);
62
69void animation_manager_set_context(AnimationManager* animation_manager, void* context);
70
86void animation_manager_set_new_idle_callback(
87 AnimationManager* animation_manager,
88 AnimationManagerSetNewIdleAnimationCallback callback);
89
96void animation_manager_new_idle_process(AnimationManager* animation_manager);
97
105void animation_manager_set_check_callback(
106 AnimationManager* animation_manager,
107 AnimationManagerCheckBlockingCallback callback);
108
115void animation_manager_check_blocking_process(AnimationManager* animation_manager);
116
124void animation_manager_set_interact_callback(
125 AnimationManager* animation_manager,
126 AnimationManagerInteractCallback callback);
127
135bool animation_manager_interact_process(AnimationManager* animation_manager);
136
141bool animation_manager_is_animation_loaded(AnimationManager* animation_manager);
142
152void animation_manager_unload_and_stall_animation(AnimationManager* animation_manager);
153
159void animation_manager_load_and_continue_animation(AnimationManager* animation_manager);
160
167void animation_manager_set_dummy_mode_state(AnimationManager* animation_manager, bool enabled);
Align
Alignment enumeration.
Definition canvas.h:36
GUI: internal Icon API.
Definition animation_manager.c:34
Definition animation_manager.h:25
Definition animation_manager.h:10
Definition animation_manager.h:18
Definition icon_i.h:9
Definition view_i.h:16
GUI: View API.