From 7d25fbcb144cf922bd4f2d770b375287d46a3ecf Mon Sep 17 00:00:00 2001 From: sbosse Date: Mon, 21 Jul 2025 23:02:17 +0200 Subject: [PATCH] Mon 21 Jul 22:43:21 CEST 2025 --- js/x11/core/examples/simple/render.js | 33 +++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 js/x11/core/examples/simple/render.js diff --git a/js/x11/core/examples/simple/render.js b/js/x11/core/examples/simple/render.js new file mode 100644 index 0000000..c0f046f --- /dev/null +++ b/js/x11/core/examples/simple/render.js @@ -0,0 +1,33 @@ +var x11 = require('../../lib'); +var PointerMotion = x11.eventMask.PointerMotion; + +var xclient = x11.createClient(function(err, display) { + var X = display.client; + var root = display.screen[0].root; + display.client.require('render', function(err, Render) { + var wid = X.AllocID(); + var white = display.screen[0].white_pixel; + varblack = display.screen[0].black_pixel; + X.CreateWindow(wid, root, 10, 10, 400, 300, 0, 0, 0, 0, { backgroundPixel: white, eventMask: PointerMotion }); + X.MapWindow(wid); + + var pict = X.AllocID(); + Render.CreatePicture(pict, wid, Render.rgb24); + var pictGrad = X.AllocID(); + Render.RadialGradient(pictGrad, [26,26], [26,26], 0, 26, + [ + [0, [0,0,0,0x0fff ] ], + [0.3, [0,0,0,0x0fff ] ], + [0.997, [0xffff, 0xf, 0, 0x1] ], + [1, [0xffff, 0xffff, 0, 0x0] ] + ]); + + function draw(x, y) { + Render.Composite(3, pictGrad, 0, pict, 0, 0, 0, 0, x-26, y-26, 52, 52); + } + + X.on('event', function(ev) { + draw(ev.x, ev.y); + }); + }); +});