jtalk.js 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. /* Adapted from Clamato by Avi Bryant. http://www.clamato.net */
  2. (function() {
  3. var scripts = document.getElementsByTagName("script");
  4. var src = scripts[ scripts.length - 1 ].src;
  5. var home = src.split("/").slice(0, -2).join("/") + "/";
  6. function loadJS(name, prefix) {
  7. var prefix = prefix || 'js';
  8. document.write('<script src="' + home + prefix + '/' + name + '" type="text/javascript"></script>');
  9. }
  10. function loadCSS(name, prefix) {
  11. var prefix = prefix || 'css';
  12. var link = document.createElement("link")
  13. link.setAttribute("rel", "stylesheet")
  14. link.setAttribute("type", "text/css")
  15. link.setAttribute("href", home + prefix + '/' + name)
  16. document.getElementsByTagName("head")[0].appendChild(link);
  17. }
  18. function loadDependencies() {
  19. loadJS('lib/jQuery/jquery-1.6.2.min.js');
  20. loadJS('lib/jQuery/jquery-ui-1.8.9.custom.min.js');
  21. }
  22. function loadIDEDependencies() {
  23. loadJS('lib/jQuery/jquery.textarea.js');
  24. loadJS('lib/jQuery/jQuery.twFile.js');
  25. loadJS('lib/CodeMirror/lib/codemirror.js');
  26. loadCSS('lib/CodeMirror/lib/codemirror.css', 'js');
  27. loadJS('lib/CodeMirror/mode/smalltalk/smalltalk.js');
  28. loadCSS('lib/CodeMirror/theme/jtalk.css', 'js');
  29. }
  30. window.loadJtalk = function(files, prefix) {
  31. loadDependencies();
  32. loadIDEDependencies();
  33. loadCSS('jtalk.css');
  34. loadCSS('sunit.css');
  35. loadJS("boot.js");
  36. loadJS("Kernel.js");
  37. loadJS("Canvas.js");
  38. loadJS("JQuery.js");
  39. loadJS("Parser.js");
  40. loadJS("Compiler.js");
  41. loadJS("parser.js");
  42. loadJS("IDE.js");
  43. loadJS("SUnit.js");
  44. loadJS("Examples.js");
  45. loadJS("Benchfib.js");
  46. loadJS("Kernel-Tests.js");
  47. loadJS("JQuery-Tests.js");
  48. if(files) {
  49. for(var i=0; i < files.length; i++) {
  50. loadJS(files[i], prefix);
  51. }
  52. }
  53. loadJS("init.js");
  54. }
  55. window.loadJtalkDeploy = function(files, prefix) {
  56. loadDependencies();
  57. loadJS("boot.js");
  58. loadJS("Kernel.deploy.js");
  59. loadJS("Canvas.deploy.js");
  60. loadJS("JQuery.deploy.js");
  61. if(files){
  62. for(var i=0; i < files.length; i++) {
  63. loadJS(files[i], prefix);
  64. }
  65. }
  66. loadJS("init.js");
  67. loadJS("deploy.js");
  68. }
  69. })();