Mercurial > MadButterfly
annotate include/animated_menu.h @ 422:c6c0d017dc8e
Use DARRAY to manage variable length list
author | Thinker K.F. Li <thinker@branda.to> |
---|---|
date | Tue, 28 Jul 2009 15:11:42 +0800 |
parents | 080aca2b7c47 |
children | 9b8dda201ccb |
rev | line source |
---|---|
323 | 1 #ifndef __ANIMATED_MENU_H |
2 #define __ANIMATED_MENU_H | |
3 typedef struct _mb_animated_menu { | |
4 char **titles; | |
5 int *menus_y; | |
6 int *items; | |
7 int top; | |
8 int cur; | |
9 int max; | |
10 int ready; | |
11 int speed; | |
12 MBApp *app; | |
13 mb_sprite_t *sprite; | |
14 mb_obj_t **objects; | |
15 mb_obj_t *lightbar; | |
16 void (*callback)(struct _mb_animated_menu *m, int sel); | |
344 | 17 void (*update_callback)(struct _mb_animated_menu *m, int sel); |
332
f90c60967a9c
Add mb_progm_finish to terminate the current animation and put all objects in the final position.
wycc
parents:
323
diff
changeset
|
18 mb_progm_t *progm; |
f90c60967a9c
Add mb_progm_finish to terminate the current animation and put all objects in the final position.
wycc
parents:
323
diff
changeset
|
19 X_kb_event_t pending_key; |
323 | 20 } mb_animated_menu_t; |
21 /** \brief Create an instace of animated menu. | |
22 * | |
23 * The objectnames is used to extract symbols from the SVG file. | |
24 * ${objectnames}0 - ${objectnames}8 is the text object. | |
25 * ${objectnames}_lightbar is the lightbar. | |
26 * | |
27 */ | |
28 mb_animated_menu_t *mb_animated_menu_new(MBApp *app,mb_sprite_t *sp,char *objnames,char *menus[]); | |
29 void mb_animated_menu_set_speed(mb_animated_menu_t *m,int speed); | |
30 int mb_animated_menu_get_speed(mb_animated_menu_t *m); | |
31 void mb_animated_menu_set_callback(mb_animated_menu_t *m, void (*f)(mb_animated_menu_t *m, int sel)); | |
32 #endif |