view nodejs/examples/testsvg/testsvg.js @ 939:a74b4d986a91

Move examples for nodejs into nodejs/examples/ sub-directories. See INSTALL.txt. Use nodejs/examples/run.sh to run examples. For example, cd nodejs/examples; ./run.sh examples/testsvg/testsvg.js
author Thinker K.F. Li <thinker@codemud.net>
date Fri, 12 Nov 2010 17:39:04 +0800
parents nodejs/testsvg.js@191d3a5f74c8
children
line wrap: on
line source

// -*- indent-tabs-mode: t; tab-width: 8; c-basic-offset: 4; -*-
// vim: sw=4:ts=8:sts=4
var svg = require("svg");
var mbapp = require("mbapp");
var sys=require("sys");
var animate=require("animate");
var fs = require("fs");

app = new mbapp.app();
app.loadSVG("test.svg");
lightbar = app.get("item_lightbar");
item=1;
var target = app.get("item" + item);
lightbar.center.move_pnt(target.center);

app.files=fs.readdirSync("/tmp/");
for(i=1;i<10;i++) {
    var o = app.get("item"+i+"text");
    o.set_text(app.files[i]);
}




app.addKeyListener(mbapp.KEY_UP, function() {
    item = item - 1;
    if (item == 0)
	item = 1;
    else {
	var target = app.get("item"+item);
	var shx = target.center.x - lightbar.center.x;
	var shy = target.center.y - lightbar.center.y;
	var action = new animate.shift(app, lightbar, shx, shy);
	var an = new animate.linear(action, 0, 0.3);
	an.start();
    }
});

app.addKeyListener(mbapp.KEY_DOWN, function() {
    item = item + 1;
    if (item == 10) {
	item = 9;
    } else {
	var target = app.get("item"+item);
	var shx = target.center.x - lightbar.center.x;
	var shy = target.center.y - lightbar.center.y;
	var action = new animate.shift(app, lightbar, shx, shy);
	var an = new animate.linear(action, 0, 0.3);
	an.start();
    }
});

app.loop();