Mercurial > MadButterfly
view src/mbaf/mbapp.c @ 439:254854ed479c
Fix bug of _find_shape_in_pos().
It can not find a correct shape for a specified point.
Since it call _shape_pos_is_in_cairo() directly, cairo_new_path() is
not called to clear path after each calling for a shape. So, old path
would interference later testing. It should call _shape_pos_is_in()
instead of _shape_pos_is_in_cairo().
author | Thinker K.F. Li <thinker@branda.to> |
---|---|
date | Thu, 30 Jul 2009 15:42:47 +0800 |
parents | 2e97e8082d83 |
children | 84ce2d4a8c3f |
line wrap: on
line source
#include <mb.h> #include <mbapp.h> MBApp *MBApp_Init(char *module) { MBApp *app = (MBApp *) malloc(sizeof(MBApp)); X_MB_runtime_t *rt; rt = X_MB_new(":0.0", 800, 600); app->rt = rt; app->rdman = X_MB_rdman(rt); app->kbevents = X_MB_kbevents(rt); app->rootsprite= sprite_load(module,app->rdman, app->rdman->root_coord); rdman_attach_backend(app->rdman, rt); MB_SPRITE_GOTO_SCENE(app->rootsprite, 1); return app; } void MBApp_setData(MBApp *app,void *data) { app->private = (void *) data; } mb_tman_t *MBApp_getTimer(MBApp *app) { return X_MB_tman(app->rt); } void MBApp_loop(MBApp *en) { /* * Start handle connections, includes one to X server. * User start to interact with the application. */ X_MB_handle_connection(en->rt); /* * Clean */ X_MB_free(en->rt); free(en); }