annotate examples/dynamic/mbapp.c @ 247:d9a78c859660

Seperate the frameowrk codes from the main.c. Write a simpler MBAF demo hello program.
author wycc
date Thu, 01 Jan 2009 08:32:03 +0800
parents
children ab8284c8dcee
rev   line source
247
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
1 #include <mb.h>
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
2 #include <mbapp.h>
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
3 MBApp *MBApp_Init(char *module)
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
4 {
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
5 MBApp *app = (MBApp *) malloc(sizeof(MBApp));
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
6 X_MB_runtime_t *rt;
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
7
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
8 rt = X_MB_new(":0.0", 800, 600);
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
9
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
10 app->rt = rt;
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
11 app->rdman = X_MB_rdman(rt);
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
12 app->rootsprite= sprite_load(module,app->rdman, app->rdman->root_coord);
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
13 return app;
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
14 }
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
15
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
16 void MBApp_setData(MBApp *app,void *data)
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
17 {
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
18 app->private = (void *) data;
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
19 }
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
20
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
21 mb_tman_t *MBApp_getTimer(MBApp *app)
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
22 {
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
23 return X_MB_tman(app->rt);
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
24 }
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
25
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
26 void MBApp_loop(MBApp *en)
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
27 {
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
28 /*
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
29 * Start handle connections, includes one to X server.
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
30 * User start to interact with the application.
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
31 */
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
32 X_MB_handle_connection(en->rt);
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
33
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
34 /*
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
35 * Clean
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
36 */
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
37 X_MB_free(en->rt);
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
38 free(en);
d9a78c859660 Seperate the frameowrk codes from the main.c.
wycc
parents:
diff changeset
39 }