widget.js 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. var blessed = require('../');
  2. // Create a screen object.
  3. var screen = blessed.screen();
  4. // Create a box perfectly centered horizontally and vertically.
  5. var box = blessed.box({
  6. top: 'center',
  7. left: 'center',
  8. width: '50%',
  9. height: '50%',
  10. content: 'Hello {bold}world{/bold}!',
  11. tags: true,
  12. border: {
  13. type: 'line'
  14. },
  15. style: {
  16. fg: 'white',
  17. bg: 'magenta',
  18. border: {
  19. fg: '#ffffff'
  20. },
  21. hover: {
  22. bg: 'green'
  23. }
  24. }
  25. });
  26. // Append our box to the screen.
  27. screen.append(box);
  28. // If our box is clicked, change the content.
  29. box.on('click', function(data) {
  30. box.setContent('{center}Some different {red-fg}content{/red-fg}.{/center}');
  31. screen.render();
  32. });
  33. // If box is focused, handle `enter` and give us some more content.
  34. box.key('enter', function() {
  35. box.setContent('{right}Even different {black-fg}content{/black-fg}.{/right}\n');
  36. box.setLine(1, 'bar');
  37. box.insertLine(1, 'foo');
  38. screen.render();
  39. });
  40. // Quit on Escape, q, or Control-C.
  41. screen.key(['escape', 'q', 'C-c'], function(ch, key) {
  42. return process.exit(0);
  43. });
  44. // Focus our element.
  45. box.focus();
  46. // Render the screen.
  47. screen.render();