widget.js 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. /**
  2. * widget.js - high-level interface for blessed
  3. * Copyright (c) 2013-2015, Christopher Jeffrey and contributors (MIT License).
  4. * https://github.com/chjj/blessed
  5. */
  6. var widget = exports;
  7. widget.classes = [
  8. 'Node',
  9. 'Screen',
  10. 'Element',
  11. 'Box',
  12. 'Text',
  13. 'Line',
  14. 'ScrollableBox',
  15. 'ScrollableText',
  16. 'BigText',
  17. 'List',
  18. 'Form',
  19. 'Input',
  20. 'Textarea',
  21. 'Textbox',
  22. 'Button',
  23. 'ProgressBar',
  24. 'FileManager',
  25. 'Checkbox',
  26. 'RadioSet',
  27. 'RadioButton',
  28. 'Prompt',
  29. 'Question',
  30. 'Message',
  31. 'Loading',
  32. 'Listbar',
  33. 'Log',
  34. 'Table',
  35. 'ListTable',
  36. 'Terminal',
  37. 'Image',
  38. 'ANSIImage',
  39. 'OverlayImage',
  40. 'Video',
  41. 'Layout'
  42. ];
  43. widget.classes.forEach(function(name) {
  44. var file = name.toLowerCase();
  45. widget[name] = widget[file] = require('./widgets/' + file);
  46. });
  47. widget.aliases = {
  48. 'ListBar': 'Listbar',
  49. 'PNG': 'ANSIImage'
  50. };
  51. Object.keys(widget.aliases).forEach(function(key) {
  52. var name = widget.aliases[key];
  53. widget[key] = widget[name];
  54. widget[key.toLowerCase()] = widget[name];
  55. });