Mon 21 Jul 22:43:21 CEST 2025

This commit is contained in:
sbosse 2025-07-21 23:05:53 +02:00
parent e1dc0c09f9
commit a293a78758

View File

@ -0,0 +1,30 @@
// ChangeProperty/GetProperty / PropertyChange event example
var x11 = require('../../lib');
var PropertyChange = x11.eventMask.PropertyChange;
x11.createClient(function(err, display) {
var X = display.client;
var root = display.screen[0].root;
var wid = X.AllocID();
X.CreateWindow(wid, root, 0, 0, 400, 300, 0, 0, 0, 0, { eventMask: PropertyChange });
X.MapWindow(wid);
// mode: 0 replace, 1 prepend, 2 append
// mode, wid, name, type, format, data
X.ChangeProperty(0, wid, X.atoms.WM_NAME, X.atoms.STRING, 8, 'Hello, NodeJS');
var interval = setInterval(function() {
X.ChangeProperty(0, wid, X.atoms.WM_NAME, X.atoms.STRING, 8, 'Hello, NodeJS ' + new Date());
}, 1000);
X.on('event', function(ev) {
X.GetProperty(0, wid, X.atoms.WM_NAME, X.atoms.STRING, 0, 10000000, function(err, prop) {
if (prop.type == X.atoms.STRING)
prop.data = prop.data.toString();
console.log(prop.data);
});
});
X.on('end', function() {
clearInterval(interval);
});
});