view nodejs/mbapp.js @ 729:299ed9319dc6

Use key symbols instead of keycodes.
author Thinker K.F. Li <thinker@branda.to>
date Tue, 17 Aug 2010 10:36:36 +0800
parents 503f3d18248e
children e77ae2d23245
line wrap: on
line source

var mbfly = require("mbfly");
var svg = require("./svg");
var mb_rt = new mbfly.mb_rt(":0.0", 720,480);
var ldr = mbfly.img_ldr_new(".");
var background = mb_rt.rect_new(0, 0, 720, 480, 0, 0);
var paint = mb_rt.paint_color_new(1, 1, 1, 1);
paint.fill(background);
mb_rt.root.add_shape(background);

app=function() {
    this.mb_rt = mb_rt;
}
app.prototype.loadSVG=function(fname) {
    svg.loadSVG(this.mb_rt,this.mb_rt.root,fname);
}

app.prototype.loop=function() {
    this.mb_rt.redraw_all();
    this.mb_rt.flush();
}
app.prototype.get=function(name) {
    return this.mb_rt.mbnames[name];
}
app.prototype.addKeyboardListener=function(type,f) {
    return this.mb_rt.kbevents.add_event_observer(type,f);    
}
app.prototype.refresh=function() {
    this.mb_rt.redraw_all();
    this.mb_rt.flush();
}

exports.app=app;

// Put all key definition here
exports.KEY_UP = 0xff52;
exports.KEY_DOWN = 0xff54;
exports.EVT_ANY=0;
exports.EVT_MOUSE_OVER=1;
exports.EVT_MOUSE_OUT=2;
exports.EVT_MOUSE_MOVE=3;
exports.EVT_MOUSE_BUT_PRESS4;
exports.EVT_MOUSE_BUT_RELEASE=5
exports.EVT_KB_PRESS=6;
exports.EVT_KB_RELEASE=7;
exports.EVT_PROGM_COMPLETE=8;
exports.EVT_RDMAN_REDRAW=9;
exports.EVT_MONITOR_ADD=10;
exports.EVT_MONITOR_REMOVE=11;
exports.EVT_MONITOR_FREE=12;
exports.EVT_MOUSE_MOVE_RAW=13;