Mercurial > MadButterfly
view src/mbaf/mbapp.c @ 773:1b522a22e16a
Remove sys.puts, it is why leaking
author | Thinker K.F. Li <thinker@codemud.net> |
---|---|
date | Sun, 29 Aug 2010 19:45:28 +0800 |
parents | af4b506ad56f |
children | 586e50f82c1f |
line wrap: on
line source
#include <mb.h> #include <mb_af.h> mbaf_t *mbaf_init(const char *module, const char *module_dir) { mbaf_t *app = (mbaf_t *) malloc(sizeof(mbaf_t)); void *rt; rt = backend.init(":0.0", 800, 600); if(rt == NULL) return NULL; sprite_set_search_path(module_dir); app->rt = rt; app->rdman = backend.rdman(rt); app->kbevents = backend.kbevents(rt); app->rootsprite= sprite_load(module,app->rdman, app->rdman->root_coord); if(app->rootsprite == NULL) { backend.free(rt); free(app); return NULL; } rdman_attach_backend(app->rdman, rt); MB_SPRITE_GOTO_SCENE(app->rootsprite, 1); return app; } void mbaf_set_data(mbaf_t *app,void *data) { app->private = (void *) data; } mb_tman_t *mbaf_get_timer(mbaf_t *app) { return backend.tman(app->rt); } void mbaf_loop(mbaf_t *app) { /* * Start handle connections, includes one to X server. * User start to interact with the application. */ backend.loop(app->rt); /* * Clean */ backend.free(app->rt); free(app); }