view examples/dynamic/mbapp.c @ 303:f894b30676e9

Add MBAF object suport. This is still work in progress yet. However, it won't affect other features. Therefore, it is checked in before it become mature.
author wycc
date Sun, 15 Feb 2009 08:34:57 +0800
parents 248a40d51473
children
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->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);
}