annotate examples/menu/animated_menu.h @ 332:f90c60967a9c

Add mb_progm_finish to terminate the current animation and put all objects in the final position. It seems that not all words are executed correctly. We need to figure out why.
author wycc
date Sat, 07 Mar 2009 08:33:01 +0800
parents 33e8ff8b7ad2
children ab7f3c00fd05
rev   line source
323
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
1 #ifndef __ANIMATED_MENU_H
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
2 #define __ANIMATED_MENU_H
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
3 typedef struct _mb_animated_menu {
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
4 char **titles;
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
5 int *menus_y;
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
6 int *items;
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
7 int top;
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
8 int cur;
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
9 int max;
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
10 int ready;
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
11 int speed;
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
12 MBApp *app;
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
13 mb_sprite_t *sprite;
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
14 mb_obj_t **objects;
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
15 mb_obj_t *lightbar;
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
16 void (*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
17 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
18 X_kb_event_t pending_key;
323
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
19 } mb_animated_menu_t;
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
20 /** \brief Create an instace of animated menu.
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
21 *
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
22 * The objectnames is used to extract symbols from the SVG file.
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
23 * ${objectnames}0 - ${objectnames}8 is the text object.
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
24 * ${objectnames}_lightbar is the lightbar.
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
25 *
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
26 */
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
27 mb_animated_menu_t *mb_animated_menu_new(MBApp *app,mb_sprite_t *sp,char *objnames,char *menus[]);
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
28 void mb_animated_menu_set_speed(mb_animated_menu_t *m,int speed);
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
29 int mb_animated_menu_get_speed(mb_animated_menu_t *m);
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
30 void mb_animated_menu_set_callback(mb_animated_menu_t *m, void (*f)(mb_animated_menu_t *m, int sel));
33e8ff8b7ad2 Check in missing file
wycc
parents:
diff changeset
31 #endif