annotate nodejs/testcase.js @ 776:77b561bb7929

Implement new algorithm to calculate the origin of the SVG elemnts so that we can implement object resize without changing the position of the object. However, the image does not work here since it does not use the transformation of the group.
author wycc
date Mon, 30 Aug 2010 08:56:44 +0800
parents cceac4ba259e
children 61c217f8cec8
rev   line source
549
6ec4d7e90480 Nodejs testcase in Javascript
Thinker K.F. Li <thinker@branda.to>
parents:
diff changeset
1 var mbfly = require("mbfly");
6ec4d7e90480 Nodejs testcase in Javascript
Thinker K.F. Li <thinker@branda.to>
parents:
diff changeset
2 var r = mbfly.Hello(" test");
6ec4d7e90480 Nodejs testcase in Javascript
Thinker K.F. Li <thinker@branda.to>
parents:
diff changeset
3 var sys = require("sys");
756
cceac4ba259e Support drawing at root window for X Window
Thinker K.F. Li <thinker@codemud.net>
parents: 749
diff changeset
4 /* process module is still not supported by nodejs v0.1.97 */
cceac4ba259e Support drawing at root window for X Window
Thinker K.F. Li <thinker@codemud.net>
parents: 749
diff changeset
5 /* var process = require("process"); */
549
6ec4d7e90480 Nodejs testcase in Javascript
Thinker K.F. Li <thinker@branda.to>
parents:
diff changeset
6 sys.puts(r);
6ec4d7e90480 Nodejs testcase in Javascript
Thinker K.F. Li <thinker@branda.to>
parents:
diff changeset
7
756
cceac4ba259e Support drawing at root window for X Window
Thinker K.F. Li <thinker@codemud.net>
parents: 749
diff changeset
8 var display_name = ":0.0";
cceac4ba259e Support drawing at root window for X Window
Thinker K.F. Li <thinker@codemud.net>
parents: 749
diff changeset
9 /* if(process.argv.length > 2)
cceac4ba259e Support drawing at root window for X Window
Thinker K.F. Li <thinker@codemud.net>
parents: 749
diff changeset
10 display_name = process.argv[2]; */
cceac4ba259e Support drawing at root window for X Window
Thinker K.F. Li <thinker@codemud.net>
parents: 749
diff changeset
11
cceac4ba259e Support drawing at root window for X Window
Thinker K.F. Li <thinker@codemud.net>
parents: 749
diff changeset
12 var mb_rt = new mbfly.mb_rt(display_name, 300, 200);
563
bc207070e3d5 Fix issue of im-properly using persistent handler for coord object template.
Thinker K.F. Li <thinker@branda.to>
parents: 562
diff changeset
13 var root = mb_rt.root;
bc207070e3d5 Fix issue of im-properly using persistent handler for coord object template.
Thinker K.F. Li <thinker@branda.to>
parents: 562
diff changeset
14 sys.puts("root matrix: " +
bc207070e3d5 Fix issue of im-properly using persistent handler for coord object template.
Thinker K.F. Li <thinker@branda.to>
parents: 562
diff changeset
15 [root[0], root[1], root[2], root[3], root[4], root[5]]);
bc207070e3d5 Fix issue of im-properly using persistent handler for coord object template.
Thinker K.F. Li <thinker@branda.to>
parents: 562
diff changeset
16 var coord = mb_rt.coord_new(root);
bc207070e3d5 Fix issue of im-properly using persistent handler for coord object template.
Thinker K.F. Li <thinker@branda.to>
parents: 562
diff changeset
17 sys.puts("coord matrix: " +
bc207070e3d5 Fix issue of im-properly using persistent handler for coord object template.
Thinker K.F. Li <thinker@branda.to>
parents: 562
diff changeset
18 [coord[0], coord[1], coord[2], coord[3], coord[4], coord[5]]);
549
6ec4d7e90480 Nodejs testcase in Javascript
Thinker K.F. Li <thinker@branda.to>
parents:
diff changeset
19
643
a65720721c60 Fix issue of exception of internal field.
Thinker K.F. Li <thinker@branda.to>
parents: 624
diff changeset
20 /* Testcase for image shapes */
a65720721c60 Fix issue of exception of internal field.
Thinker K.F. Li <thinker@branda.to>
parents: 624
diff changeset
21 var img = mb_rt.image_new(10, 10, 50, 50);
a65720721c60 Fix issue of exception of internal field.
Thinker K.F. Li <thinker@branda.to>
parents: 624
diff changeset
22 var ldr = mbfly.img_ldr_new(".");
a65720721c60 Fix issue of exception of internal field.
Thinker K.F. Li <thinker@branda.to>
parents: 624
diff changeset
23 var img_data = ldr.load("sample.png");
a65720721c60 Fix issue of exception of internal field.
Thinker K.F. Li <thinker@branda.to>
parents: 624
diff changeset
24 var paint = mb_rt.paint_image_new(img_data);
a65720721c60 Fix issue of exception of internal field.
Thinker K.F. Li <thinker@branda.to>
parents: 624
diff changeset
25 paint.fill(img);
a65720721c60 Fix issue of exception of internal field.
Thinker K.F. Li <thinker@branda.to>
parents: 624
diff changeset
26 root.add_shape(img);
a65720721c60 Fix issue of exception of internal field.
Thinker K.F. Li <thinker@branda.to>
parents: 624
diff changeset
27
734
5ac257be7bc0 Testcase for linear and radial paint for JS
Thinker K.F. Li <thinker@branda.to>
parents: 733
diff changeset
28 /* test linear paint and rectangle */
5ac257be7bc0 Testcase for linear and radial paint for JS
Thinker K.F. Li <thinker@branda.to>
parents: 733
diff changeset
29 var rect = mb_rt.rect_new(100, 100, 50, 50, 10, 10);
5ac257be7bc0 Testcase for linear and radial paint for JS
Thinker K.F. Li <thinker@branda.to>
parents: 733
diff changeset
30 sys.puts(mb_rt.paint_linear_new);
5ac257be7bc0 Testcase for linear and radial paint for JS
Thinker K.F. Li <thinker@branda.to>
parents: 733
diff changeset
31 var paint = mb_rt.paint_linear_new(100, 100, 150, 150);
5ac257be7bc0 Testcase for linear and radial paint for JS
Thinker K.F. Li <thinker@branda.to>
parents: 733
diff changeset
32 paint.set_stops([[0, 0, 1, 0, 1], [1, 0, 0, 1, 1]]);
5ac257be7bc0 Testcase for linear and radial paint for JS
Thinker K.F. Li <thinker@branda.to>
parents: 733
diff changeset
33 paint.fill(rect);
5ac257be7bc0 Testcase for linear and radial paint for JS
Thinker K.F. Li <thinker@branda.to>
parents: 733
diff changeset
34 root.add_shape(rect);
5ac257be7bc0 Testcase for linear and radial paint for JS
Thinker K.F. Li <thinker@branda.to>
parents: 733
diff changeset
35
5ac257be7bc0 Testcase for linear and radial paint for JS
Thinker K.F. Li <thinker@branda.to>
parents: 733
diff changeset
36 /* test radial paint and rectangle */
5ac257be7bc0 Testcase for linear and radial paint for JS
Thinker K.F. Li <thinker@branda.to>
parents: 733
diff changeset
37 var rect = mb_rt.rect_new(150, 100, 50, 50, 10, 10);
5ac257be7bc0 Testcase for linear and radial paint for JS
Thinker K.F. Li <thinker@branda.to>
parents: 733
diff changeset
38 sys.puts(mb_rt.paint_radial_new);
5ac257be7bc0 Testcase for linear and radial paint for JS
Thinker K.F. Li <thinker@branda.to>
parents: 733
diff changeset
39 var paint = mb_rt.paint_radial_new(175, 125, 25);
5ac257be7bc0 Testcase for linear and radial paint for JS
Thinker K.F. Li <thinker@branda.to>
parents: 733
diff changeset
40 paint.set_stops([[0, 0, 1, 0, 1], [1, 0, 0, 1, 1]]);
5ac257be7bc0 Testcase for linear and radial paint for JS
Thinker K.F. Li <thinker@branda.to>
parents: 733
diff changeset
41 paint.fill(rect);
5ac257be7bc0 Testcase for linear and radial paint for JS
Thinker K.F. Li <thinker@branda.to>
parents: 733
diff changeset
42 root.add_shape(rect);
5ac257be7bc0 Testcase for linear and radial paint for JS
Thinker K.F. Li <thinker@branda.to>
parents: 733
diff changeset
43
690
86c6ebf1de25 Add JS binding for sh_rect_t
Thinker K.F. Li <thinker@branda.to>
parents: 681
diff changeset
44 /* test alpha blending and rectangle */
86c6ebf1de25 Add JS binding for sh_rect_t
Thinker K.F. Li <thinker@branda.to>
parents: 681
diff changeset
45 var rect = mb_rt.rect_new(40, 40, 100, 100, 10, 10);
86c6ebf1de25 Add JS binding for sh_rect_t
Thinker K.F. Li <thinker@branda.to>
parents: 681
diff changeset
46 sys.puts(mb_rt.paint_color_new);
86c6ebf1de25 Add JS binding for sh_rect_t
Thinker K.F. Li <thinker@branda.to>
parents: 681
diff changeset
47 var paint = mb_rt.paint_color_new(1, 0.5, 0.5, 0.5);
86c6ebf1de25 Add JS binding for sh_rect_t
Thinker K.F. Li <thinker@branda.to>
parents: 681
diff changeset
48 paint.fill(rect);
86c6ebf1de25 Add JS binding for sh_rect_t
Thinker K.F. Li <thinker@branda.to>
parents: 681
diff changeset
49 root.add_shape(rect);
86c6ebf1de25 Add JS binding for sh_rect_t
Thinker K.F. Li <thinker@branda.to>
parents: 681
diff changeset
50
749
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
51 /* test hide of shapes */
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
52 var sw = 1;
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
53 setInterval(function() {
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
54 if(sw) {
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
55 rect.hide();
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
56 sw = 0;
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
57 } else {
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
58 rect.show();
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
59 sw = 1;
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
60 }
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
61 }, 1000);
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
62
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
63 /* test hide of coord */
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
64 var cw = 1;
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
65 setInterval(function() {
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
66 if(sw) {
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
67 coord.hide();
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
68 cw = 0;
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
69 } else {
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
70 coord.show();
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
71 cw = 1;
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
72 }
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
73 }, 3000);
ed59e659a202 Implement binding for hide/show for shapes and coords
Thinker K.F. Li <thinker@codemud.net>
parents: 748
diff changeset
74
742
24038e7a365b Reorder instructions to invalidate coords correctly
Thinker K.F. Li <thinker@codemud.net>
parents: 734
diff changeset
75 /* test removing a coord */
24038e7a365b Reorder instructions to invalidate coords correctly
Thinker K.F. Li <thinker@codemud.net>
parents: 734
diff changeset
76 var rm_coord = mb_rt.coord_new(root);
748
56a5e08cd8af Make shapes can be removed from the tree
Thinker K.F. Li <thinker@codemud.net>
parents: 743
diff changeset
77 var rm_rect1 = mb_rt.rect_new(150, 150, 50, 50, 10, 10);
56a5e08cd8af Make shapes can be removed from the tree
Thinker K.F. Li <thinker@codemud.net>
parents: 743
diff changeset
78 paint.fill(rm_rect1);
56a5e08cd8af Make shapes can be removed from the tree
Thinker K.F. Li <thinker@codemud.net>
parents: 743
diff changeset
79 rm_coord.add_shape(rm_rect1);
56a5e08cd8af Make shapes can be removed from the tree
Thinker K.F. Li <thinker@codemud.net>
parents: 743
diff changeset
80 var rm_rect2 = mb_rt.rect_new(100, 150, 50, 50, 10, 10);
56a5e08cd8af Make shapes can be removed from the tree
Thinker K.F. Li <thinker@codemud.net>
parents: 743
diff changeset
81 paint.fill(rm_rect2);
56a5e08cd8af Make shapes can be removed from the tree
Thinker K.F. Li <thinker@codemud.net>
parents: 743
diff changeset
82 rm_coord.add_shape(rm_rect2);
743
dd1f3382d6a4 Create a persistent handle for coords and shapes correctly
Thinker K.F. Li <thinker@codemud.net>
parents: 742
diff changeset
83 setTimeout(function() {
dd1f3382d6a4 Create a persistent handle for coords and shapes correctly
Thinker K.F. Li <thinker@codemud.net>
parents: 742
diff changeset
84 rm_coord.remove();
dd1f3382d6a4 Create a persistent handle for coords and shapes correctly
Thinker K.F. Li <thinker@codemud.net>
parents: 742
diff changeset
85 mb_rt.redraw_changed();
dd1f3382d6a4 Create a persistent handle for coords and shapes correctly
Thinker K.F. Li <thinker@codemud.net>
parents: 742
diff changeset
86 mb_rt.flush();
dd1f3382d6a4 Create a persistent handle for coords and shapes correctly
Thinker K.F. Li <thinker@codemud.net>
parents: 742
diff changeset
87 }, 3000);
742
24038e7a365b Reorder instructions to invalidate coords correctly
Thinker K.F. Li <thinker@codemud.net>
parents: 734
diff changeset
88
748
56a5e08cd8af Make shapes can be removed from the tree
Thinker K.F. Li <thinker@codemud.net>
parents: 743
diff changeset
89 /* test removing a shape */
56a5e08cd8af Make shapes can be removed from the tree
Thinker K.F. Li <thinker@codemud.net>
parents: 743
diff changeset
90 setTimeout(function() {
56a5e08cd8af Make shapes can be removed from the tree
Thinker K.F. Li <thinker@codemud.net>
parents: 743
diff changeset
91 rm_rect1.remove();
56a5e08cd8af Make shapes can be removed from the tree
Thinker K.F. Li <thinker@codemud.net>
parents: 743
diff changeset
92 mb_rt.redraw_changed();
56a5e08cd8af Make shapes can be removed from the tree
Thinker K.F. Li <thinker@codemud.net>
parents: 743
diff changeset
93 mb_rt.flush();
56a5e08cd8af Make shapes can be removed from the tree
Thinker K.F. Li <thinker@codemud.net>
parents: 743
diff changeset
94 }, 2000);
56a5e08cd8af Make shapes can be removed from the tree
Thinker K.F. Li <thinker@codemud.net>
parents: 743
diff changeset
95
644
c9f8c7e6f57e Add comment
Thinker K.F. Li <thinker@branda.to>
parents: 643
diff changeset
96 /* Moving a path */
565
c0bc60448913 Constructor for path objects in Javascript domain
Thinker K.F. Li <thinker@branda.to>
parents: 563
diff changeset
97 sys.puts(mb_rt.path_new);
571
13b15b7a463b Redraw all and changed in Javascript
Thinker K.F. Li <thinker@branda.to>
parents: 570
diff changeset
98 var path = mb_rt.path_new("m 100,50 L 120,50 L 200,150 L 180,150 z");
565
c0bc60448913 Constructor for path objects in Javascript domain
Thinker K.F. Li <thinker@branda.to>
parents: 563
diff changeset
99 sys.puts(path);
566
6639d386db78 Function of add a shape to a coord in Javascript.
Thinker K.F. Li <thinker@branda.to>
parents: 565
diff changeset
100 sys.puts(coord.add_shape);
6639d386db78 Function of add a shape to a coord in Javascript.
Thinker K.F. Li <thinker@branda.to>
parents: 565
diff changeset
101 coord.add_shape(path);
565
c0bc60448913 Constructor for path objects in Javascript domain
Thinker K.F. Li <thinker@branda.to>
parents: 563
diff changeset
102
567
a12c3448afb6 Add dummy paint_color templates
Thinker K.F. Li <thinker@branda.to>
parents: 566
diff changeset
103 sys.puts(mb_rt.paint_color_new);
574
a2faee809514 Implement stext type for Javascript
Thinker K.F. Li <thinker@branda.to>
parents: 571
diff changeset
104 var paint = mb_rt.paint_color_new(1, 1, 1, 1);
568
d796e6b8b97e Real initialize a paint_color_t object for paint_color JS obj
Thinker K.F. Li <thinker@branda.to>
parents: 567
diff changeset
105 sys.puts(paint);
569
f87a368e847a Functions of stroke and fill a shape
Thinker K.F. Li <thinker@branda.to>
parents: 568
diff changeset
106 paint.stroke(path);
567
a12c3448afb6 Add dummy paint_color templates
Thinker K.F. Li <thinker@branda.to>
parents: 566
diff changeset
107
570
49e79253b6d3 Functions of setting/getting stroke width of a shape
Thinker K.F. Li <thinker@branda.to>
parents: 569
diff changeset
108 sys.puts(path.stroke_width);
49e79253b6d3 Functions of setting/getting stroke width of a shape
Thinker K.F. Li <thinker@branda.to>
parents: 569
diff changeset
109 path.stroke_width = 2;
49e79253b6d3 Functions of setting/getting stroke width of a shape
Thinker K.F. Li <thinker@branda.to>
parents: 569
diff changeset
110 sys.puts(path.stroke_width);
49e79253b6d3 Functions of setting/getting stroke width of a shape
Thinker K.F. Li <thinker@branda.to>
parents: 569
diff changeset
111
576
5a68e2bcea17 Set font styles for stext in Javascript
Thinker K.F. Li <thinker@branda.to>
parents: 574
diff changeset
112 var face = mb_rt.font_face_query("courier", 2, 100);
5a68e2bcea17 Set font styles for stext in Javascript
Thinker K.F. Li <thinker@branda.to>
parents: 574
diff changeset
113 var blks = [[5, face, 20]];
5a68e2bcea17 Set font styles for stext in Javascript
Thinker K.F. Li <thinker@branda.to>
parents: 574
diff changeset
114 var stext = mb_rt.stext_new("Hello", 100, 50);
5a68e2bcea17 Set font styles for stext in Javascript
Thinker K.F. Li <thinker@branda.to>
parents: 574
diff changeset
115 stext.set_style(blks);
5a68e2bcea17 Set font styles for stext in Javascript
Thinker K.F. Li <thinker@branda.to>
parents: 574
diff changeset
116 paint.fill(stext);
5a68e2bcea17 Set font styles for stext in Javascript
Thinker K.F. Li <thinker@branda.to>
parents: 574
diff changeset
117 coord.add_shape(stext);
5a68e2bcea17 Set font styles for stext in Javascript
Thinker K.F. Li <thinker@branda.to>
parents: 574
diff changeset
118
571
13b15b7a463b Redraw all and changed in Javascript
Thinker K.F. Li <thinker@branda.to>
parents: 570
diff changeset
119 mb_rt.redraw_all();
704
d950487bd9f9 Flush mb_rt, immediately, after redraw_all()
Thinker K.F. Li <thinker@branda.to>
parents: 699
diff changeset
120 mb_rt.flush();
571
13b15b7a463b Redraw all and changed in Javascript
Thinker K.F. Li <thinker@branda.to>
parents: 570
diff changeset
121
13b15b7a463b Redraw all and changed in Javascript
Thinker K.F. Li <thinker@branda.to>
parents: 570
diff changeset
122 var i = 0;
13b15b7a463b Redraw all and changed in Javascript
Thinker K.F. Li <thinker@branda.to>
parents: 570
diff changeset
123 setInterval(function() {
13b15b7a463b Redraw all and changed in Javascript
Thinker K.F. Li <thinker@branda.to>
parents: 570
diff changeset
124 var deg = (i++) * 0.1;
699
0b98bdc53215 Add binding for color changing of paint_color_t in JS
Thinker K.F. Li <thinker@branda.to>
parents: 697
diff changeset
125 coord[2] = (i % 40) * 5;
571
13b15b7a463b Redraw all and changed in Javascript
Thinker K.F. Li <thinker@branda.to>
parents: 570
diff changeset
126 mb_rt.redraw_changed();
733
163f0d9e6382 Add binding for linear and radial paints for JS
Thinker K.F. Li <thinker@branda.to>
parents: 725
diff changeset
127 mb_rt.flush();
624
d45c928f6523 Add SVG parser sample code.
wycc
parents: 576
diff changeset
128 }, 20);
549
6ec4d7e90480 Nodejs testcase in Javascript
Thinker K.F. Li <thinker@branda.to>
parents:
diff changeset
129 setTimeout(function() { sys.puts("timeout"); }, 1000);
676
f264b50c469c Bind subject of mouse_event to JS object of coord
Thinker K.F. Li <thinker@branda.to>
parents: 644
diff changeset
130
680
a588eefd3f04 Refactor to xnjsmb_coord_mod().
Thinker K.F. Li <thinker@branda.to>
parents: 679
diff changeset
131 sys.puts(root.mouse_event);
676
f264b50c469c Bind subject of mouse_event to JS object of coord
Thinker K.F. Li <thinker@branda.to>
parents: 644
diff changeset
132 var observer;
f264b50c469c Bind subject of mouse_event to JS object of coord
Thinker K.F. Li <thinker@branda.to>
parents: 644
diff changeset
133 /* Mouse button pressed */
680
a588eefd3f04 Refactor to xnjsmb_coord_mod().
Thinker K.F. Li <thinker@branda.to>
parents: 679
diff changeset
134 observer = root.mouse_event.add_event_observer(4, function(evt) {
699
0b98bdc53215 Add binding for color changing of paint_color_t in JS
Thinker K.F. Li <thinker@branda.to>
parents: 697
diff changeset
135 var c = 1 - (i % 40) / 40;
0b98bdc53215 Add binding for color changing of paint_color_t in JS
Thinker K.F. Li <thinker@branda.to>
parents: 697
diff changeset
136 sys.puts(c);
0b98bdc53215 Add binding for color changing of paint_color_t in JS
Thinker K.F. Li <thinker@branda.to>
parents: 697
diff changeset
137
679
799c852b9065 Extract event info from C object to JS object
Thinker K.F. Li <thinker@branda.to>
parents: 676
diff changeset
138 sys.puts("mouse " + evt.x + " " + evt.y);
699
0b98bdc53215 Add binding for color changing of paint_color_t in JS
Thinker K.F. Li <thinker@branda.to>
parents: 697
diff changeset
139 sys.puts(c);
0b98bdc53215 Add binding for color changing of paint_color_t in JS
Thinker K.F. Li <thinker@branda.to>
parents: 697
diff changeset
140 sys.puts(paint.set_color);
0b98bdc53215 Add binding for color changing of paint_color_t in JS
Thinker K.F. Li <thinker@branda.to>
parents: 697
diff changeset
141 paint.set_color(c, 1, 1, 1);
0b98bdc53215 Add binding for color changing of paint_color_t in JS
Thinker K.F. Li <thinker@branda.to>
parents: 697
diff changeset
142 mb_rt.redraw_changed();
0b98bdc53215 Add binding for color changing of paint_color_t in JS
Thinker K.F. Li <thinker@branda.to>
parents: 697
diff changeset
143 mb_rt.flush();
676
f264b50c469c Bind subject of mouse_event to JS object of coord
Thinker K.F. Li <thinker@branda.to>
parents: 644
diff changeset
144 });
679
799c852b9065 Extract event info from C object to JS object
Thinker K.F. Li <thinker@branda.to>
parents: 676
diff changeset
145
799c852b9065 Extract event info from C object to JS object
Thinker K.F. Li <thinker@branda.to>
parents: 676
diff changeset
146 var kbobserver;
799c852b9065 Extract event info from C object to JS object
Thinker K.F. Li <thinker@branda.to>
parents: 676
diff changeset
147 /* Keyboard event */
681
b601a4d6f7d1 Change kbevent to kbevents and hide X_MB_kbevents()
Thinker K.F. Li <thinker@branda.to>
parents: 680
diff changeset
148 kbobserver = mb_rt.kbevents.add_event_observer(6, function(evt) {
679
799c852b9065 Extract event info from C object to JS object
Thinker K.F. Li <thinker@branda.to>
parents: 676
diff changeset
149 sys.puts("keycode = " + evt.keycode);
799c852b9065 Extract event info from C object to JS object
Thinker K.F. Li <thinker@branda.to>
parents: 676
diff changeset
150 sys.puts("sym = " + evt.sym);
799c852b9065 Extract event info from C object to JS object
Thinker K.F. Li <thinker@branda.to>
parents: 676
diff changeset
151 });