UNPKG

2.02 kBJavaScriptView Raw
1/**
2 * Example Program for Blessed
3 * Copyright (c) 2013, Christopher Jeffrey (MIT License).
4 * https://github.com/chjj/blessed
5 */
6
7var blessed = require('../')
8 , program = blessed.program();
9
10process.title = 'blessed';
11
12program.on('keypress', function(ch, key) {
13 if (key.name === 'q') {
14 program.clear();
15 program.disableMouse();
16 program.showCursor();
17 program.normalBuffer();
18 process.exit(0);
19 }
20});
21
22program.on('mouse', function(data) {
23 if (data.action === 'mouseup') return;
24 program.move(1, program.rows);
25 program.eraseInLine('right');
26 if (data.action === 'wheelup') {
27 program.write('Mouse wheel up at: ' + data.x + ', ' + data.y);
28 } else if (data.action === 'wheeldown') {
29 program.write('Mouse wheel down at: ' + data.x + ', ' + data.y);
30 } else if (data.action === 'mousedown' && data.button === 'left') {
31 program.write('Left button down at: ' + data.x + ', ' + data.y);
32 } else if (data.action === 'mousedown' && data.button === 'right') {
33 program.write('Right button down at: ' + data.x + ', ' + data.y);
34 } else {
35 program.write('Mouse at: ' + data.x + ', ' + data.y);
36 }
37 program.move(data.x, data.y);
38 program.bg('red');
39 program.write(' ');
40 program.bg('!red');
41});
42
43program.on('focus', function() {
44 program.move(1, program.rows);
45 program.write('Gained focus.');
46});
47
48program.on('blur', function() {
49 program.move(1, program.rows);
50 program.write('Lost focus.');
51});
52
53program.alternateBuffer();
54program.enableMouse();
55program.hideCursor();
56program.clear();
57
58program.move(1, 1);
59program.bg('black');
60program.write('Hello world', 'blue fg');
61program.setx((program.cols / 2 | 0) - 4);
62program.down(5);
63program.write('Hi again!');
64program.bg('!black');
65program.feed();
66
67program.getCursor(function(err, data) {
68 if (!err) {
69 program.write('Cursor is at: ' + data.x + ', ' + data.y + '.');
70 program.feed();
71 }
72
73 program.charset('SCLD');
74 program.write('abcdefghijklmnopqrstuvwxyz0123456789');
75 program.charset('US');
76 program.setx(1);
77});