index.js 2.0 KB

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