From ac65378885863394c8a492b15ee192258b050fcd Mon Sep 17 00:00:00 2001 From: Andrey Sidorov Date: Fri, 16 Dec 2011 09:37:15 +1100 Subject: [PATCH] simple pngs are displayed now --- examples/png/test.js | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/examples/png/test.js b/examples/png/test.js index 6615d7f..37d96b6 100644 --- a/examples/png/test.js +++ b/examples/png/test.js @@ -1,4 +1,5 @@ -var logo = require('./node-png').readPng('./node-logo.png'); +//var logo = require('./node-png').readPng('./node-logo.png'); +var logo = require('./node-png').readPng(process.argv[2]); var x11 = require('../../lib/x11'); var Exposure = x11.eventMask.Exposure; @@ -6,6 +7,7 @@ var KeyPress = x11.eventMask.KeyPress; var KeyRelease = x11.eventMask.KeyRelease; var ButtonPress = x11.eventMask.ButtonPress; var ButtonRelease = x11.eventMask.ButtonRelease; +var PointerMotion = x11.eventMask.PointerMotion; x11.createClient(function(display) { @@ -27,7 +29,7 @@ x11.createClient(function(display) 0, 0, logo.width, logo.height, 1, 1, 0, { - backgroundPixel: white, eventMask: Exposure|KeyPress|ButtonPress + backgroundPixel: white, eventMask: Exposure|KeyPress|ButtonPress|PointerMotion } ); X.MapWindow(win); @@ -37,19 +39,24 @@ x11.createClient(function(display) var pixmaplogo = X.AllocID(); X.CreatePixmap(pixmaplogo, win, 24, logo.width, logo.height); - var piclogo = X.AllocID(); + X.PolyFillRectangle(pixmaplogo, gc, [0, 0, 1000, 1000]); X.PutImage(2, pixmaplogo, gc, logo.width, logo.height, 0, 0, 0, 24, logo.data); + + var piclogo = X.AllocID(); Render.CreatePicture(piclogo, pixmaplogo, Render.rgb24); + + var picWin = X.AllocID(); + Render.CreatePicture(picWin, win, Render.rgb24); X.on('event', function(ev) { if (ev.type == 12) // expose - { - Render.Composite(3, piclogo, 0, win, 0, 0, 0, 0, 0, 0, logo.width, logo.height); - } + { + Render.Composite(3, piclogo, 0, picWin, 0, 0, 0, 0, 0, 0, logo.width, logo.height); + } }); X.on('error', function(err) { - console.log(err.stack); + console.log(err); }); });