HelloApp.js 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. define("amber-helloapp/HelloApp", ["amber/boot", "amber_core/Kernel-Objects"], function($boot){
  2. var $core=$boot.api,nil=$boot.nil,$recv=$boot.asReceiver,$globals=$boot.globals;
  3. var smalltalk=$core,_st=$recv,globals=$globals;
  4. $core.addPackage('HelloApp');
  5. $core.packages["HelloApp"].transport = {"type":"amd","amdNamespace":"amber-helloapp"};
  6. $core.addClass('HelloApp', $globals.Object, [], 'HelloApp');
  7. $core.addMethod(
  8. $core.method({
  9. selector: "augmentPage",
  10. protocol: 'starting',
  11. fn: function (){
  12. var self=this;
  13. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  14. return $core.withContext(function($ctx1) {
  15. //>>excludeEnd("ctx");
  16. var $1;
  17. $1="#amber-with"._asJQuery();
  18. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  19. $ctx1.sendIdx["asJQuery"]=1;
  20. //>>excludeEnd("ctx");
  21. $recv($1)._click_((function(){
  22. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  23. return $core.withContext(function($ctx2) {
  24. //>>excludeEnd("ctx");
  25. return self._doAmberWith();
  26. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  27. }, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)});
  28. //>>excludeEnd("ctx");
  29. }));
  30. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  31. $ctx1.sendIdx["click:"]=1;
  32. //>>excludeEnd("ctx");
  33. $recv("#jquery-append"._asJQuery())._click_((function(){
  34. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  35. return $core.withContext(function($ctx2) {
  36. //>>excludeEnd("ctx");
  37. return self._doJQueryAppend();
  38. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  39. }, function($ctx2) {$ctx2.fillBlock({},$ctx1,2)});
  40. //>>excludeEnd("ctx");
  41. }));
  42. return self;
  43. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  44. }, function($ctx1) {$ctx1.fill(self,"augmentPage",{},$globals.HelloApp)});
  45. //>>excludeEnd("ctx");
  46. },
  47. //>>excludeStart("ide", pragmas.excludeIdeData);
  48. args: [],
  49. source: "augmentPage\x0a\x09'#amber-with' asJQuery click: [ self doAmberWith ].\x0a\x09'#jquery-append' asJQuery click: [ self doJQueryAppend ]",
  50. referencedClasses: [],
  51. //>>excludeEnd("ide");
  52. messageSends: ["click:", "asJQuery", "doAmberWith", "doJQueryAppend"]
  53. }),
  54. $globals.HelloApp);
  55. $core.addMethod(
  56. $core.method({
  57. selector: "doAmberWith",
  58. protocol: 'action',
  59. fn: function (){
  60. var self=this;
  61. var tag;
  62. function $HTMLCanvas(){return $globals.HTMLCanvas||(typeof HTMLCanvas=="undefined"?nil:HTMLCanvas)}
  63. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  64. return $core.withContext(function($ctx1) {
  65. //>>excludeEnd("ctx");
  66. tag=$recv($recv($HTMLCanvas())._onJQuery_("#output-list"._asJQuery()))._root();
  67. $recv(tag)._with_((function(html){
  68. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  69. return $core.withContext(function($ctx2) {
  70. //>>excludeEnd("ctx");
  71. return $recv($recv(html)._li())._with_("Amber Web #with: added me!");
  72. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  73. }, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1,1)});
  74. //>>excludeEnd("ctx");
  75. }));
  76. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  77. $ctx1.sendIdx["with:"]=1;
  78. //>>excludeEnd("ctx");
  79. return self;
  80. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  81. }, function($ctx1) {$ctx1.fill(self,"doAmberWith",{tag:tag},$globals.HelloApp)});
  82. //>>excludeEnd("ctx");
  83. },
  84. //>>excludeStart("ide", pragmas.excludeIdeData);
  85. args: [],
  86. source: "doAmberWith\x0a\x09| tag |\x0a\x09tag := (HTMLCanvas onJQuery: '#output-list' asJQuery) root.\x0a\x09tag with: [ :html | html li with: 'Amber Web #with: added me!' ]",
  87. referencedClasses: ["HTMLCanvas"],
  88. //>>excludeEnd("ide");
  89. messageSends: ["root", "onJQuery:", "asJQuery", "with:", "li"]
  90. }),
  91. $globals.HelloApp);
  92. $core.addMethod(
  93. $core.method({
  94. selector: "doJQueryAppend",
  95. protocol: 'action',
  96. fn: function (){
  97. var self=this;
  98. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  99. return $core.withContext(function($ctx1) {
  100. //>>excludeEnd("ctx");
  101. $recv("#output-list"._asJQuery())._append_("<li>jQuery append added me!</li>");
  102. return self;
  103. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  104. }, function($ctx1) {$ctx1.fill(self,"doJQueryAppend",{},$globals.HelloApp)});
  105. //>>excludeEnd("ctx");
  106. },
  107. //>>excludeStart("ide", pragmas.excludeIdeData);
  108. args: [],
  109. source: "doJQueryAppend\x0a\x09'#output-list' asJQuery append: '<li>jQuery append added me!</li>'",
  110. referencedClasses: [],
  111. //>>excludeEnd("ide");
  112. messageSends: ["append:", "asJQuery"]
  113. }),
  114. $globals.HelloApp);
  115. $core.addMethod(
  116. $core.method({
  117. selector: "start",
  118. protocol: 'starting',
  119. fn: function (){
  120. var self=this;
  121. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  122. return $core.withContext(function($ctx1) {
  123. //>>excludeEnd("ctx");
  124. $recv(self._new())._augmentPage();
  125. return self;
  126. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  127. }, function($ctx1) {$ctx1.fill(self,"start",{},$globals.HelloApp.klass)});
  128. //>>excludeEnd("ctx");
  129. },
  130. //>>excludeStart("ide", pragmas.excludeIdeData);
  131. args: [],
  132. source: "start\x0a\x09self new augmentPage",
  133. referencedClasses: [],
  134. //>>excludeEnd("ide");
  135. messageSends: ["augmentPage", "new"]
  136. }),
  137. $globals.HelloApp.klass);
  138. });