Helios-Browser.deploy.js 41 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376
  1. smalltalk.addPackage('Helios-Browser', {});
  2. smalltalk.addClass('HLBrowser', smalltalk.HLWidget, ['model', 'packagesListWidget', 'classesListWidget', 'protocolsListWidget', 'methodsListWidget', 'sourceWidget'], 'Helios-Browser');
  3. smalltalk.addMethod(
  4. "_announcer",
  5. smalltalk.method({
  6. selector: "announcer",
  7. fn: function () {
  8. var self = this;
  9. var $1;
  10. $1 = smalltalk.send(smalltalk.send(self, "_model", []), "_announcer", []);
  11. return $1;
  12. }
  13. }),
  14. smalltalk.HLBrowser);
  15. smalltalk.addMethod(
  16. "_classesListWidget",
  17. smalltalk.method({
  18. selector: "classesListWidget",
  19. fn: function () {
  20. var self = this;
  21. var $1;
  22. if (($receiver = self['@classesListWidget']) == nil ||
  23. $receiver == undefined) {
  24. self['@classesListWidget'] = smalltalk.send(smalltalk.HLClassesListWidget || HLClassesListWidget, "_on_", [smalltalk.send(self, "_model", [])]);
  25. self['@classesListWidget'];
  26. $1 = smalltalk.send(self['@classesListWidget'], "_next_", [smalltalk.send(self, "_protocolsListWidget", [])]);
  27. } else {
  28. $1 = self['@classesListWidget'];
  29. }
  30. return $1;
  31. }
  32. }),
  33. smalltalk.HLBrowser);
  34. smalltalk.addMethod(
  35. "_environment",
  36. smalltalk.method({
  37. selector: "environment",
  38. fn: function () {
  39. var self = this;
  40. var $1;
  41. $1 = smalltalk.send(smalltalk.send(self, "_model", []), "_environment", []);
  42. return $1;
  43. }
  44. }),
  45. smalltalk.HLBrowser);
  46. smalltalk.addMethod(
  47. "_methodsListWidget",
  48. smalltalk.method({
  49. selector: "methodsListWidget",
  50. fn: function () {
  51. var self = this;
  52. var $1;
  53. if (($receiver = self['@methodsListWidget']) == nil ||
  54. $receiver == undefined) {
  55. self['@methodsListWidget'] = smalltalk.send(smalltalk.HLMethodsListWidget || HLMethodsListWidget, "_on_", [smalltalk.send(self, "_model", [])]);
  56. $1 = self['@methodsListWidget'];
  57. } else {
  58. $1 = self['@methodsListWidget'];
  59. }
  60. return $1;
  61. }
  62. }),
  63. smalltalk.HLBrowser);
  64. smalltalk.addMethod(
  65. "_model",
  66. smalltalk.method({
  67. selector: "model",
  68. fn: function () {
  69. var self = this;
  70. var $1;
  71. if (($receiver = self['@model']) == nil || $receiver == undefined) {
  72. self['@model'] = smalltalk.send(smalltalk.HLBrowserModel || HLBrowserModel, "_new", []);
  73. $1 = self['@model'];
  74. } else {
  75. $1 = self['@model'];
  76. }
  77. return $1;
  78. }
  79. }),
  80. smalltalk.HLBrowser);
  81. smalltalk.addMethod(
  82. "_model_",
  83. smalltalk.method({
  84. selector: "model:",
  85. fn: function (aModel) {
  86. var self = this;
  87. self['@model'] = aModel;
  88. return self;
  89. }
  90. }),
  91. smalltalk.HLBrowser);
  92. smalltalk.addMethod(
  93. "_packagesListWidget",
  94. smalltalk.method({
  95. selector: "packagesListWidget",
  96. fn: function () {
  97. var self = this;
  98. var $1;
  99. if (($receiver = self['@packagesListWidget']) == nil ||
  100. $receiver == undefined) {
  101. self['@packagesListWidget'] = smalltalk.send(smalltalk.HLPackagesListWidget || HLPackagesListWidget, "_on_", [smalltalk.send(self, "_model", [])]);
  102. self['@packagesListWidget'];
  103. $1 = smalltalk.send(self['@packagesListWidget'], "_next_", [smalltalk.send(self, "_classesListWidget", [])]);
  104. } else {
  105. $1 = self['@packagesListWidget'];
  106. }
  107. return $1;
  108. }
  109. }),
  110. smalltalk.HLBrowser);
  111. smalltalk.addMethod(
  112. "_protocolsListWidget",
  113. smalltalk.method({
  114. selector: "protocolsListWidget",
  115. fn: function () {
  116. var self = this;
  117. var $1;
  118. if (($receiver = self['@protocolsListWidget']) == nil ||
  119. $receiver == undefined) {
  120. self['@protocolsListWidget'] = smalltalk.send(smalltalk.HLProtocolsListWidget || HLProtocolsListWidget, "_on_", [smalltalk.send(self, "_model", [])]);
  121. self['@protocolsListWidget'];
  122. $1 = smalltalk.send(self['@protocolsListWidget'], "_next_", [smalltalk.send(self, "_methodsListWidget", [])]);
  123. } else {
  124. $1 = self['@protocolsListWidget'];
  125. }
  126. return $1;
  127. }
  128. }),
  129. smalltalk.HLBrowser);
  130. smalltalk.addMethod(
  131. "_registerBindingsOn_",
  132. smalltalk.method({
  133. selector: "registerBindingsOn:",
  134. fn: function (aBindingGroup) {
  135. var self = this;
  136. var $1, $2;
  137. smalltalk.send(aBindingGroup, "_addGroupKey_labelled_", [66, "Browse"]);
  138. smalltalk.send(aBindingGroup, "_addGroupKey_labelled_", [71, "Go to"]);
  139. $1 = smalltalk.send(aBindingGroup, "_addGroupKey_labelled_", [84, "Toggle"]);
  140. smalltalk.send(smalltalk.send(smalltalk.HLBrowserCommand || HLBrowserCommand, "_withAllSubclasses", []), "_do_", [function (each) {$2 = smalltalk.send(each, "_key", []);if (($receiver = $2) == nil || $receiver == undefined) {return $2;} else {return smalltalk.send(smalltalk.send(aBindingGroup, "_at_", [smalltalk.send(each, "_bindingGroup", [])]), "_add_", [smalltalk.send(smalltalk.send(each, "_on_", [smalltalk.send(self, "_model", [])]), "_asBinding", [])]);}}]);
  141. return self;
  142. }
  143. }),
  144. smalltalk.HLBrowser);
  145. smalltalk.addMethod(
  146. "_renderContentOn_",
  147. smalltalk.method({
  148. selector: "renderContentOn:",
  149. fn: function (html) {
  150. var self = this;
  151. smalltalk.send(html, "_with_", [smalltalk.send(smalltalk.HLContainer || HLContainer, "_with_", [smalltalk.send(smalltalk.HLHorizontalSplitter || HLHorizontalSplitter, "_with_with_", [smalltalk.send(smalltalk.HLVerticalSplitter || HLVerticalSplitter, "_with_with_", [smalltalk.send(smalltalk.HLVerticalSplitter || HLVerticalSplitter, "_with_with_", [smalltalk.send(self, "_packagesListWidget", []), smalltalk.send(self, "_classesListWidget", [])]), smalltalk.send(smalltalk.HLVerticalSplitter || HLVerticalSplitter, "_with_with_", [smalltalk.send(self, "_protocolsListWidget", []), smalltalk.send(self, "_methodsListWidget", [])])]), smalltalk.send(self, "_sourceWidget", [])])])]);
  152. return self;
  153. }
  154. }),
  155. smalltalk.HLBrowser);
  156. smalltalk.addMethod(
  157. "_sourceWidget",
  158. smalltalk.method({
  159. selector: "sourceWidget",
  160. fn: function () {
  161. var self = this;
  162. var $1;
  163. if (($receiver = self['@sourceWidget']) == nil ||
  164. $receiver == undefined) {
  165. self['@sourceWidget'] = smalltalk.send(smalltalk.HLBrowserSourceWidget || HLBrowserSourceWidget, "_on_", [smalltalk.send(self, "_model", [])]);
  166. $1 = self['@sourceWidget'];
  167. } else {
  168. $1 = self['@sourceWidget'];
  169. }
  170. return $1;
  171. }
  172. }),
  173. smalltalk.HLBrowser);
  174. smalltalk.HLBrowser.klass.iVarNames = ['nextId'];
  175. smalltalk.addMethod(
  176. "_canBeOpenAsTab",
  177. smalltalk.method({
  178. selector: "canBeOpenAsTab",
  179. fn: function () {
  180. var self = this;
  181. return true;
  182. }
  183. }),
  184. smalltalk.HLBrowser.klass);
  185. smalltalk.addMethod(
  186. "_nextId",
  187. smalltalk.method({
  188. selector: "nextId",
  189. fn: function () {
  190. var self = this;
  191. var $1;
  192. if (($receiver = self['@nextId']) == nil || $receiver == undefined) {
  193. self['@nextId'] = 0;
  194. self['@nextId'];
  195. } else {
  196. self['@nextId'];
  197. }
  198. $1 = smalltalk.send("browser_", "__comma", [smalltalk.send(smalltalk.send(self['@nextId'], "__plus", [1]), "_asString", [])]);
  199. return $1;
  200. }
  201. }),
  202. smalltalk.HLBrowser.klass);
  203. smalltalk.addMethod(
  204. "_tabLabel",
  205. smalltalk.method({
  206. selector: "tabLabel",
  207. fn: function () {
  208. var self = this;
  209. return "Browser";
  210. }
  211. }),
  212. smalltalk.HLBrowser.klass);
  213. smalltalk.addMethod(
  214. "_tabPriority",
  215. smalltalk.method({
  216. selector: "tabPriority",
  217. fn: function () {
  218. var self = this;
  219. return 0;
  220. }
  221. }),
  222. smalltalk.HLBrowser.klass);
  223. smalltalk.addClass('HLBrowserListWidget', smalltalk.HLNavigationListWidget, ['model'], 'Helios-Browser');
  224. smalltalk.addMethod(
  225. "_model",
  226. smalltalk.method({
  227. selector: "model",
  228. fn: function () {
  229. var self = this;
  230. return self['@model'];
  231. }
  232. }),
  233. smalltalk.HLBrowserListWidget);
  234. smalltalk.addMethod(
  235. "_model_",
  236. smalltalk.method({
  237. selector: "model:",
  238. fn: function (aBrowserModel) {
  239. var self = this;
  240. self['@model'] = aBrowserModel;
  241. smalltalk.send(self['@model'], "_subscribe_", [self]);
  242. return self;
  243. }
  244. }),
  245. smalltalk.HLBrowserListWidget);
  246. smalltalk.addMethod(
  247. "_on_",
  248. smalltalk.method({
  249. selector: "on:",
  250. fn: function (aModel) {
  251. var self = this;
  252. var $2, $3, $1;
  253. $2 = smalltalk.send(self, "_new", []);
  254. smalltalk.send($2, "_model_", [aModel]);
  255. $3 = smalltalk.send($2, "_yourself", []);
  256. $1 = $3;
  257. return $1;
  258. }
  259. }),
  260. smalltalk.HLBrowserListWidget.klass);
  261. smalltalk.addClass('HLClassesListWidget', smalltalk.HLBrowserListWidget, [], 'Helios-Browser');
  262. smalltalk.addMethod(
  263. "_focusMethodsListWidget",
  264. smalltalk.method({
  265. selector: "focusMethodsListWidget",
  266. fn: function () {
  267. var self = this;
  268. smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_announcer", []), "_announce_", [smalltalk.send(smalltalk.HLMethodsListFocus || HLMethodsListFocus, "_new", [])]);
  269. return self;
  270. }
  271. }),
  272. smalltalk.HLClassesListWidget);
  273. smalltalk.addMethod(
  274. "_focusProtocolsListWidget",
  275. smalltalk.method({
  276. selector: "focusProtocolsListWidget",
  277. fn: function () {
  278. var self = this;
  279. smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_announcer", []), "_announce_", [smalltalk.send(smalltalk.HLProtocolsListFocus || HLProtocolsListFocus, "_new", [])]);
  280. return self;
  281. }
  282. }),
  283. smalltalk.HLClassesListWidget);
  284. smalltalk.addMethod(
  285. "_getChildrenOf_",
  286. smalltalk.method({
  287. selector: "getChildrenOf:",
  288. fn: function (aClass) {
  289. var self = this;
  290. var $1;
  291. $1 = smalltalk.send(smalltalk.send(self, "_items", []), "_select_", [function (each) {return smalltalk.send(smalltalk.send(each, "_superclass", []), "__eq", [aClass]);}]);
  292. return $1;
  293. }
  294. }),
  295. smalltalk.HLClassesListWidget);
  296. smalltalk.addMethod(
  297. "_getRootClassesOf_",
  298. smalltalk.method({
  299. selector: "getRootClassesOf:",
  300. fn: function (aCollection) {
  301. var self = this;
  302. var $1;
  303. $1 = smalltalk.send(aCollection, "_select_", [function (each) {return smalltalk.send(smalltalk.send(smalltalk.send(each, "_allSuperclasses", []), "_intersection_", [aCollection]), "_isEmpty", []);}]);
  304. return $1;
  305. }
  306. }),
  307. smalltalk.HLClassesListWidget);
  308. smalltalk.addMethod(
  309. "_iconForItem_",
  310. smalltalk.method({
  311. selector: "iconForItem:",
  312. fn: function (aClass) {
  313. var self = this;
  314. var $2, $1;
  315. $2 = smalltalk.send(smalltalk.send(smalltalk.send(aClass, "_theNonMetaClass", []), "_comment", []), "_isEmpty", []);
  316. if (smalltalk.assert($2)) {
  317. $1 = "icon-question-sign";
  318. } else {
  319. $1 = "icon-none";
  320. }
  321. return $1;
  322. }
  323. }),
  324. smalltalk.HLClassesListWidget);
  325. smalltalk.addMethod(
  326. "_packageSelected_",
  327. smalltalk.method({
  328. selector: "packageSelected:",
  329. fn: function (aPackage) {
  330. var self = this;
  331. var $1;
  332. smalltalk.send(self, "_selectedItem_", [nil]);
  333. if (($receiver = aPackage) == nil || $receiver == undefined) {
  334. $1 = [];
  335. } else {
  336. $1 = smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(aPackage, "_classes", []), "_collect_", [function (each) {return smalltalk.send(each, "_theNonMetaClass", []);}]), "_asSet", []), "_asArray", []);
  337. }
  338. smalltalk.send(self, "_items_", [$1]);
  339. smalltalk.send(self, "_refresh", []);
  340. return self;
  341. }
  342. }),
  343. smalltalk.HLClassesListWidget);
  344. smalltalk.addMethod(
  345. "_renderButtonsOn_",
  346. smalltalk.method({
  347. selector: "renderButtonsOn:",
  348. fn: function (html) {
  349. var self = this;
  350. var $1, $3, $4, $5, $6, $7, $8, $2, $9, $10;
  351. $1 = smalltalk.send(html, "_div", []);
  352. smalltalk.send($1, "_class_", ["btn-group"]);
  353. smalltalk.send($1, "_at_put_", ["data-toggle", "buttons-radio"]);
  354. $2 = smalltalk.send($1, "_with_", [function () {$3 = smalltalk.send(html, "_button", []);smalltalk.send($3, "_class_", [smalltalk.send(smalltalk.String || String, "_streamContents_", [function (str) {smalltalk.send(str, "_nextPutAll_", ["btn"]);$4 = smalltalk.send(self, "_showInstance", []);if (smalltalk.assert($4)) {return smalltalk.send(str, "_nextPutAll_", [" active"]);}}])]);smalltalk.send($3, "_with_", ["Instance"]);$5 = smalltalk.send($3, "_onClick_", [function () {return smalltalk.send(self, "_showInstance_", [true]);}]);$5;$6 = smalltalk.send(html, "_button", []);smalltalk.send($6, "_class_", [smalltalk.send(smalltalk.String || String, "_streamContents_", [function (str) {smalltalk.send(str, "_nextPutAll_", ["btn"]);$7 = smalltalk.send(smalltalk.send(self, "_model", []), "_showInstance", []);if (!smalltalk.assert($7)) {return smalltalk.send(str, "_nextPutAll_", [" active"]);}}])]);smalltalk.send($6, "_with_", ["Class"]);$8 = smalltalk.send($6, "_onClick_", [function () {return smalltalk.send(smalltalk.send(self, "_model", []), "_showInstance_", [false]);}]);return $8;}]);
  355. $9 = smalltalk.send(html, "_button", []);
  356. smalltalk.send($9, "_class_", ["btn"]);
  357. smalltalk.send($9, "_at_put_", ["data-toggle", "button"]);
  358. $10 = smalltalk.send($9, "_with_", ["Comment"]);
  359. return self;
  360. }
  361. }),
  362. smalltalk.HLClassesListWidget);
  363. smalltalk.addMethod(
  364. "_renderItem_level_on_",
  365. smalltalk.method({
  366. selector: "renderItem:level:on:",
  367. fn: function (aClass, anInteger, html) {
  368. var self = this;
  369. var $2, $3, $1;
  370. var li;
  371. li = smalltalk.send(html, "_li", []);
  372. smalltalk.send(li, "_at_put_", ["list-data", smalltalk.send(smalltalk.send(self, "_items", []), "_indexOf_", [aClass])]);
  373. smalltalk.send(li, "_class_", [smalltalk.send(self, "_cssClassForItem_", [aClass])]);
  374. $1 = smalltalk.send(li, "_with_", [function () {$2 = smalltalk.send(html, "_a", []);smalltalk.send($2, "_with_", [function () {smalltalk.send(smalltalk.send(html, "_tag_", ["i"]), "_class_", [smalltalk.send(self, "_iconForItem_", [aClass])]);return smalltalk.send(self, "_renderItemLabel_level_on_", [aClass, anInteger, html]);}]);$3 = smalltalk.send($2, "_onClick_", [function () {return smalltalk.send(self, "_activateListItem_", [smalltalk.send(li, "_asJQuery", [])]);}]);return $3;}]);
  375. smalltalk.send(smalltalk.send(self, "_getChildrenOf_", [aClass]), "_do_", [function (each) {return smalltalk.send(self, "_renderItem_level_on_", [each, smalltalk.send(anInteger, "__plus", [1]), html]);}]);
  376. return self;
  377. }
  378. }),
  379. smalltalk.HLClassesListWidget);
  380. smalltalk.addMethod(
  381. "_renderItem_on_",
  382. smalltalk.method({
  383. selector: "renderItem:on:",
  384. fn: function (aClass, html) {
  385. var self = this;
  386. smalltalk.send(self, "_renderItem_on_", [aClass, html], smalltalk.HLBrowserListWidget);
  387. smalltalk.send(smalltalk.send(self, "_getChildrenOf_", [aClass]), "_do_", [function (each) {return smalltalk.send(self, "_renderItem_level_on_", [each, 1, html]);}]);
  388. return self;
  389. }
  390. }),
  391. smalltalk.HLClassesListWidget);
  392. smalltalk.addMethod(
  393. "_renderItemLabel_level_on_",
  394. smalltalk.method({
  395. selector: "renderItemLabel:level:on:",
  396. fn: function (aClass, anInteger, html) {
  397. var self = this;
  398. smalltalk.send(smalltalk.send(smalltalk.send(html, "_span", []), "_asJQuery", []), "_html_", [smalltalk.send(smalltalk.String || String, "_streamContents_", [function (str) {smalltalk.send(anInteger, "_timesRepeat_", [function () {return smalltalk.send(str, "_nextPutAll_", ["    "]);}]);return smalltalk.send(str, "_nextPutAll_", [smalltalk.send(aClass, "_name", [])]);}])]);
  399. return self;
  400. }
  401. }),
  402. smalltalk.HLClassesListWidget);
  403. smalltalk.addMethod(
  404. "_renderItemLabel_on_",
  405. smalltalk.method({
  406. selector: "renderItemLabel:on:",
  407. fn: function (aClass, html) {
  408. var self = this;
  409. smalltalk.send(self, "_renderItemLabel_level_on_", [aClass, 0, html]);
  410. return self;
  411. }
  412. }),
  413. smalltalk.HLClassesListWidget);
  414. smalltalk.addMethod(
  415. "_renderListOn_",
  416. smalltalk.method({
  417. selector: "renderListOn:",
  418. fn: function (html) {
  419. var self = this;
  420. smalltalk.send(smalltalk.send(self, "_getRootClassesOf_", [smalltalk.send(self, "_items", [])]), "_do_", [function (each) {return smalltalk.send(self, "_renderItem_on_", [each, html]);}]);
  421. return self;
  422. }
  423. }),
  424. smalltalk.HLClassesListWidget);
  425. smalltalk.addMethod(
  426. "_selectItem_",
  427. smalltalk.method({
  428. selector: "selectItem:",
  429. fn: function (aClass){
  430. var self=this;
  431. smalltalk.send(self,"_selectItem_",[aClass],smalltalk.HLBrowserListWidget);
  432. smalltalk.send(smalltalk.send(self,"_model",[]),"_selectedClass_",[aClass]);
  433. return self}
  434. }),
  435. smalltalk.HLClassesListWidget);
  436. smalltalk.addMethod(
  437. "_showInstance",
  438. smalltalk.method({
  439. selector: "showInstance",
  440. fn: function () {
  441. var self = this;
  442. var $1;
  443. $1 = smalltalk.send(smalltalk.send(self, "_model", []), "_showInstance", []);
  444. return $1;
  445. }
  446. }),
  447. smalltalk.HLClassesListWidget);
  448. smalltalk.addMethod(
  449. "_showInstance_",
  450. smalltalk.method({
  451. selector: "showInstance:",
  452. fn: function (aBoolean) {
  453. var self = this;
  454. smalltalk.send(smalltalk.send(self, "_model", []), "_showInstance_", [aBoolean]);
  455. return self;
  456. }
  457. }),
  458. smalltalk.HLClassesListWidget);
  459. smalltalk.addMethod(
  460. "_subscribeTo_",
  461. smalltalk.method({
  462. selector: "subscribeTo:",
  463. fn: function (anAnnouncer) {
  464. var self = this;
  465. smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLPackageSelected || HLPackageSelected, function (ann) {return smalltalk.send(self, "_packageSelected_", [smalltalk.send(ann, "_item", [])]);}]);
  466. smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLShowInstanceToggled || HLShowInstanceToggled, function (ann) {return smalltalk.send(self, "_refresh", []);}]);
  467. smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLClassSelected || HLClassSelected, function (ann) {return smalltalk.send(self, "_focus", []);}]);
  468. return self;
  469. }
  470. }),
  471. smalltalk.HLClassesListWidget);
  472. smalltalk.addClass('HLMethodsListWidget', smalltalk.HLBrowserListWidget, ['selectorsCache'], 'Helios-Browser');
  473. smalltalk.addMethod(
  474. "_allProtocol",
  475. smalltalk.method({
  476. selector: "allProtocol",
  477. fn: function () {
  478. var self = this;
  479. var $1;
  480. $1 = smalltalk.send(smalltalk.send(self, "_model", []), "_allProtocol", []);
  481. return $1;
  482. }
  483. }),
  484. smalltalk.HLMethodsListWidget);
  485. smalltalk.addMethod(
  486. "_flushSelectorsCache",
  487. smalltalk.method({
  488. selector: "flushSelectorsCache",
  489. fn: function () {
  490. var self = this;
  491. self['@selectorsCache'] = smalltalk.send(smalltalk.Dictionary || Dictionary, "_new", []);
  492. return self;
  493. }
  494. }),
  495. smalltalk.HLMethodsListWidget);
  496. smalltalk.addMethod(
  497. "_iconForItem_",
  498. smalltalk.method({
  499. selector: "iconForItem:",
  500. fn: function (aCompiledMethod) {
  501. var self = this;
  502. var $1;
  503. var override;
  504. var overriden;
  505. override = smalltalk.send(self, "_isOverride_", [aCompiledMethod]);
  506. overriden = smalltalk.send(self, "_isOverriden_", [aCompiledMethod]);
  507. if (smalltalk.assert(override)) {
  508. if (smalltalk.assert(overriden)) {
  509. $1 = "icon-resize-vertical";
  510. } else {
  511. $1 = "icon-arrow-up";
  512. }
  513. } else {
  514. if (smalltalk.assert(overriden)) {
  515. $1 = "icon-arrow-down";
  516. } else {
  517. $1 = "icon-none";
  518. }
  519. }
  520. return $1;
  521. }
  522. }),
  523. smalltalk.HLMethodsListWidget);
  524. smalltalk.addMethod(
  525. "_initialize",
  526. smalltalk.method({
  527. selector: "initialize",
  528. fn: function () {
  529. var self = this;
  530. smalltalk.send(self, "_initialize", [], smalltalk.HLBrowserListWidget);
  531. smalltalk.send(self, "_flushSelectorsCache", []);
  532. return self;
  533. }
  534. }),
  535. smalltalk.HLMethodsListWidget);
  536. smalltalk.addMethod(
  537. "_isOverride_",
  538. smalltalk.method({
  539. selector: "isOverride:",
  540. fn: function (aMethod) {
  541. var self = this;
  542. var $1;
  543. $1 = smalltalk.send(smalltalk.send(self, "_overrideSelectors", []), "_includes_", [smalltalk.send(aMethod, "_selector", [])]);
  544. return $1;
  545. }
  546. }),
  547. smalltalk.HLMethodsListWidget);
  548. smalltalk.addMethod(
  549. "_isOverriden_",
  550. smalltalk.method({
  551. selector: "isOverriden:",
  552. fn: function (aMethod) {
  553. var self = this;
  554. var $1;
  555. $1 = smalltalk.send(smalltalk.send(self, "_overridenSelectors", []), "_includes_", [smalltalk.send(aMethod, "_selector", [])]);
  556. return $1;
  557. }
  558. }),
  559. smalltalk.HLMethodsListWidget);
  560. smalltalk.addMethod(
  561. "_methodsInProtocol_",
  562. smalltalk.method({
  563. selector: "methodsInProtocol:",
  564. fn: function (aString) {
  565. var self = this;
  566. var $2, $1;
  567. $2 = smalltalk.send(aString, "__eq", [smalltalk.send(self, "_allProtocol", [])]);
  568. if (smalltalk.assert($2)) {
  569. $1 = smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_selectedClass", []), "_methods", []);
  570. } else {
  571. $1 = smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_selectedClass", []), "_methodsInProtocol_", [aString]);
  572. }
  573. return $1;
  574. }
  575. }),
  576. smalltalk.HLMethodsListWidget);
  577. smalltalk.addMethod(
  578. "_overrideSelectors",
  579. smalltalk.method({
  580. selector: "overrideSelectors",
  581. fn: function () {
  582. var self = this;
  583. var $2, $1;
  584. $1 = smalltalk.send(smalltalk.send(self, "_selectorsCache", []), "_at_ifAbsentPut_", ["override", function () {return smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_selectedClass", []), "_allSuperclasses", []), "_inject_into_", [smalltalk.send(smalltalk.Set || Set, "_new", []), function (acc, each) {smalltalk.send(acc, "_addAll_", [smalltalk.send(each, "_selectors", [])]);$2 = smalltalk.send(acc, "_yourself", []);return $2;}]);}]);
  585. return $1;
  586. }
  587. }),
  588. smalltalk.HLMethodsListWidget);
  589. smalltalk.addMethod(
  590. "_overridenSelectors",
  591. smalltalk.method({
  592. selector: "overridenSelectors",
  593. fn: function () {
  594. var self = this;
  595. var $2, $1;
  596. $1 = smalltalk.send(smalltalk.send(self, "_selectorsCache", []), "_at_ifAbsentPut_", ["overriden", function () {return smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_selectedClass", []), "_allSubclasses", []), "_inject_into_", [smalltalk.send(smalltalk.Set || Set, "_new", []), function (acc, each) {smalltalk.send(acc, "_addAll_", [smalltalk.send(each, "_selectors", [])]);$2 = smalltalk.send(acc, "_yourself", []);return $2;}]);}]);
  597. return $1;
  598. }
  599. }),
  600. smalltalk.HLMethodsListWidget);
  601. smalltalk.addMethod(
  602. "_protocolSelected_",
  603. smalltalk.method({
  604. selector: "protocolSelected:",
  605. fn: function (aString){
  606. var self=this;
  607. var $2,$1;
  608. smalltalk.send(self,"_selectedItem_",[nil]);
  609. $2=smalltalk.send(smalltalk.send(self,"_model",[]),"_selectedClass",[]);
  610. if(($receiver = $2) == nil || $receiver == undefined){
  611. $1=[];
  612. } else {
  613. if(($receiver = aString) == nil || $receiver == undefined){
  614. $1=[];
  615. } else {
  616. $1=smalltalk.send(self,"_methodsInProtocol_",[aString]);
  617. };
  618. };
  619. smalltalk.send(self,"_items_",[$1]);
  620. smalltalk.send(self,"_refresh",[]);
  621. return self}
  622. }),
  623. smalltalk.HLMethodsListWidget);
  624. smalltalk.addMethod(
  625. "_renderContentOn_",
  626. smalltalk.method({
  627. selector: "renderContentOn:",
  628. fn: function (html) {
  629. var self = this;
  630. var $1, $2, $3;
  631. $1 = smalltalk.send(smalltalk.send(self, "_model", []), "_showInstance", []);
  632. if (smalltalk.assert($1)) {
  633. smalltalk.send(self, "_renderContentOn_", [html], smalltalk.HLBrowserListWidget);
  634. } else {
  635. $2 = smalltalk.send(html, "_div", []);
  636. smalltalk.send($2, "_class_", ["class_side"]);
  637. $3 = smalltalk.send($2, "_with_", [function () {return smalltalk.send(self, "_renderContentOn_", [html], smalltalk.HLBrowserListWidget);}]);
  638. }
  639. smalltalk.send(self, "_flushSelectorsCache", []);
  640. return self;
  641. }
  642. }),
  643. smalltalk.HLMethodsListWidget);
  644. smalltalk.addMethod(
  645. "_renderItemLabel_on_",
  646. smalltalk.method({
  647. selector: "renderItemLabel:on:",
  648. fn: function (aCompiledMethod, html) {
  649. var self = this;
  650. smalltalk.send(html, "_with_", [smalltalk.send(aCompiledMethod, "_selector", [])]);
  651. return self;
  652. }
  653. }),
  654. smalltalk.HLMethodsListWidget);
  655. smalltalk.addMethod(
  656. "_selectItem_",
  657. smalltalk.method({
  658. selector: "selectItem:",
  659. fn: function (aCompiledMethod){
  660. var self=this;
  661. smalltalk.send(self,"_selectItem_",[aCompiledMethod],smalltalk.HLBrowserListWidget);
  662. smalltalk.send(smalltalk.send(self,"_model",[]),"_selectedMethod_",[aCompiledMethod]);
  663. return self}
  664. }),
  665. smalltalk.HLMethodsListWidget);
  666. smalltalk.addMethod(
  667. "_selectorsCache",
  668. smalltalk.method({
  669. selector: "selectorsCache",
  670. fn: function () {
  671. var self = this;
  672. return self['@selectorsCache'];
  673. }
  674. }),
  675. smalltalk.HLMethodsListWidget);
  676. smalltalk.addMethod(
  677. "_subscribeTo_",
  678. smalltalk.method({
  679. selector: "subscribeTo:",
  680. fn: function (anAnnouncer) {
  681. var self = this;
  682. smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLProtocolSelected || HLProtocolSelected, function (ann) {return smalltalk.send(self, "_protocolSelected_", [smalltalk.send(ann, "_item", [])]);}]);
  683. smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLShowInstanceToggled || HLShowInstanceToggled, function (ann) {return smalltalk.send(self, "_protocolSelected_", [nil]);}]);
  684. smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLMethodSelected || HLMethodSelected, function (ann) {return smalltalk.send(self, "_focus", []);}]);
  685. return self;
  686. }
  687. }),
  688. smalltalk.HLMethodsListWidget);
  689. smalltalk.addClass('HLPackagesListWidget', smalltalk.HLBrowserListWidget, [], 'Helios-Browser');
  690. smalltalk.addMethod(
  691. "_focusClassesListWidget",
  692. smalltalk.method({
  693. selector: "focusClassesListWidget",
  694. fn: function () {
  695. var self = this;
  696. smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_announcer", []), "_announce_", [smalltalk.send(smalltalk.HLClassesListFocus || HLClassesListFocus, "_new", [])]);
  697. return self;
  698. }
  699. }),
  700. smalltalk.HLPackagesListWidget);
  701. smalltalk.addMethod(
  702. "_items",
  703. smalltalk.method({
  704. selector: "items",
  705. fn: function () {
  706. var self = this;
  707. var $1;
  708. if (($receiver = self['@items']) == nil || $receiver == undefined) {
  709. self['@items'] = smalltalk.send(smalltalk.send(self, "_model", []), "_packages", []);
  710. $1 = self['@items'];
  711. } else {
  712. $1 = self['@items'];
  713. }
  714. return $1;
  715. }
  716. }),
  717. smalltalk.HLPackagesListWidget);
  718. smalltalk.addMethod(
  719. "_renderButtonsOn_",
  720. smalltalk.method({
  721. selector: "renderButtonsOn:",
  722. fn: function (html) {
  723. var self = this;
  724. var $1, $2, $3, $5, $6, $7, $8, $4, $9, $10;
  725. $1 = smalltalk.send(html, "_span", []);
  726. smalltalk.send($1, "_class_", ["info"]);
  727. $2 = smalltalk.send($1, "_with_", ["Auto commit"]);
  728. $3 = smalltalk.send(html, "_div", []);
  729. smalltalk.send($3, "_class_", ["btn-group switch"]);
  730. smalltalk.send($3, "_at_put_", ["data-toggle", "buttons-radio"]);
  731. $4 = smalltalk.send($3, "_with_", [function () {$5 = smalltalk.send(html, "_button", []);smalltalk.send($5, "_class_", [smalltalk.send(smalltalk.String || String, "_streamContents_", [function (str) {return smalltalk.send(str, "_nextPutAll_", ["btn"]);}])]);$6 = smalltalk.send($5, "_with_", ["On"]);$6;$7 = smalltalk.send(html, "_button", []);smalltalk.send($7, "_class_", [smalltalk.send(smalltalk.String || String, "_streamContents_", [function (str) {return smalltalk.send(str, "_nextPutAll_", ["btn active"]);}])]);$8 = smalltalk.send($7, "_with_", ["Off"]);return $8;}]);
  732. $9 = smalltalk.send(html, "_a", []);
  733. smalltalk.send($9, "_class_", ["btn"]);
  734. $10 = smalltalk.send($9, "_with_", ["Commit"]);
  735. return self;
  736. }
  737. }),
  738. smalltalk.HLPackagesListWidget);
  739. smalltalk.addMethod(
  740. "_selectItem_",
  741. smalltalk.method({
  742. selector: "selectItem:",
  743. fn: function (aPackage){
  744. var self=this;
  745. smalltalk.send(self,"_selectItem_",[aPackage],smalltalk.HLBrowserListWidget);
  746. smalltalk.send(smalltalk.send(self,"_model",[]),"_selectedPackage_",[aPackage]);
  747. return self}
  748. }),
  749. smalltalk.HLPackagesListWidget);
  750. smalltalk.addMethod(
  751. "_subscribeTo_",
  752. smalltalk.method({
  753. selector: "subscribeTo:",
  754. fn: function (anAnnouncer) {
  755. var self = this;
  756. smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLPackageSelected || HLPackageSelected, function (ann) {return smalltalk.send(self, "_focus", []);}]);
  757. return self;
  758. }
  759. }),
  760. smalltalk.HLPackagesListWidget);
  761. smalltalk.addClass('HLProtocolsListWidget', smalltalk.HLBrowserListWidget, [], 'Helios-Browser');
  762. smalltalk.addMethod(
  763. "_allProtocol",
  764. smalltalk.method({
  765. selector: "allProtocol",
  766. fn: function () {
  767. var self = this;
  768. var $1;
  769. $1 = smalltalk.send(smalltalk.send(self, "_model", []), "_allProtocol", []);
  770. return $1;
  771. }
  772. }),
  773. smalltalk.HLProtocolsListWidget);
  774. smalltalk.addMethod(
  775. "_classSelected_",
  776. smalltalk.method({
  777. selector: "classSelected:",
  778. fn: function (aClass) {
  779. var self = this;
  780. var $2, $3, $1;
  781. smalltalk.send(self, "_selectedItem_", [nil]);
  782. if (($receiver = aClass) == nil || $receiver == undefined) {
  783. $1 = smalltalk.send(smalltalk.Array || Array, "_with_", [smalltalk.send(self, "_allProtocol", [])]);
  784. } else {
  785. $2 = smalltalk.send(smalltalk.Array || Array, "_with_", [smalltalk.send(self, "_allProtocol", [])]);
  786. smalltalk.send($2, "_addAll_", [smalltalk.send(aClass, "_protocols", [])]);
  787. $3 = smalltalk.send($2, "_yourself", []);
  788. $1 = $3;
  789. }
  790. smalltalk.send(self, "_items_", [$1]);
  791. smalltalk.send(self, "_refresh", []);
  792. return self;
  793. }
  794. }),
  795. smalltalk.HLProtocolsListWidget);
  796. smalltalk.addMethod(
  797. "_renderContentOn_",
  798. smalltalk.method({
  799. selector: "renderContentOn:",
  800. fn: function (html) {
  801. var self = this;
  802. var $1, $2, $3;
  803. $1 = smalltalk.send(smalltalk.send(self, "_model", []), "_showInstance", []);
  804. if (smalltalk.assert($1)) {
  805. smalltalk.send(self, "_renderContentOn_", [html], smalltalk.HLBrowserListWidget);
  806. } else {
  807. $2 = smalltalk.send(html, "_div", []);
  808. smalltalk.send($2, "_class_", ["class_side"]);
  809. $3 = smalltalk.send($2, "_with_", [function () {return smalltalk.send(self, "_renderContentOn_", [html], smalltalk.HLBrowserListWidget);}]);
  810. }
  811. return self;
  812. }
  813. }),
  814. smalltalk.HLProtocolsListWidget);
  815. smalltalk.addMethod(
  816. "_selectItem_",
  817. smalltalk.method({
  818. selector: "selectItem:",
  819. fn: function (aString){
  820. var self=this;
  821. smalltalk.send(self,"_selectItem_",[aString],smalltalk.HLBrowserListWidget);
  822. smalltalk.send(smalltalk.send(self,"_model",[]),"_selectedProtocol_",[aString]);
  823. return self}
  824. }),
  825. smalltalk.HLProtocolsListWidget);
  826. smalltalk.addMethod(
  827. "_selectedItem",
  828. smalltalk.method({
  829. selector: "selectedItem",
  830. fn: function (){
  831. var self=this;
  832. var $1;
  833. $1=smalltalk.send(self,"_selectedItem",[],smalltalk.HLBrowserListWidget);
  834. return $1;
  835. }
  836. }),
  837. smalltalk.HLProtocolsListWidget);
  838. smalltalk.addMethod(
  839. "_subscribeTo_",
  840. smalltalk.method({
  841. selector: "subscribeTo:",
  842. fn: function (anAnnouncer) {
  843. var self = this;
  844. smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLClassSelected || HLClassSelected, function (ann) {return smalltalk.send(self, "_classSelected_", [smalltalk.send(ann, "_item", [])]);}]);
  845. smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLShowInstanceToggled || HLShowInstanceToggled, function (ann) {return smalltalk.send(self, "_classSelected_", [smalltalk.send(smalltalk.send(self, "_model", []), "_selectedClass", [])]);}]);
  846. smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLProtocolSelected || HLProtocolSelected, function (ann) {return smalltalk.send(self, "_focus", []);}]);
  847. return self;
  848. }
  849. }),
  850. smalltalk.HLProtocolsListWidget);
  851. smalltalk.addClass('HLBrowserModel', smalltalk.Object, ['announcer', 'environment', 'selectedPackage', 'selectedClass', 'selectedProtocol', 'selectedMethod', 'showInstance', 'showComment'], 'Helios-Browser');
  852. smalltalk.addMethod(
  853. "_allProtocol",
  854. smalltalk.method({
  855. selector: "allProtocol",
  856. fn: function () {
  857. var self = this;
  858. return "-- All --";
  859. }
  860. }),
  861. smalltalk.HLBrowserModel);
  862. smalltalk.addMethod(
  863. "_announcer",
  864. smalltalk.method({
  865. selector: "announcer",
  866. fn: function () {
  867. var self = this;
  868. var $1;
  869. if (($receiver = self['@announcer']) == nil || $receiver == undefined) {
  870. self['@announcer'] = smalltalk.send(smalltalk.Announcer || Announcer, "_new", []);
  871. $1 = self['@announcer'];
  872. } else {
  873. $1 = self['@announcer'];
  874. }
  875. return $1;
  876. }
  877. }),
  878. smalltalk.HLBrowserModel);
  879. smalltalk.addMethod(
  880. "_environment",
  881. smalltalk.method({
  882. selector: "environment",
  883. fn: function () {
  884. var self = this;
  885. var $1;
  886. if (($receiver = self['@environment']) == nil || $receiver == undefined) {
  887. self['@environment'] = smalltalk.send(smalltalk.Smalltalk || Smalltalk, "_current", []);
  888. $1 = self['@environment'];
  889. } else {
  890. $1 = self['@environment'];
  891. }
  892. return $1;
  893. }
  894. }),
  895. smalltalk.HLBrowserModel);
  896. smalltalk.addMethod(
  897. "_environment_",
  898. smalltalk.method({
  899. selector: "environment:",
  900. fn: function (anEnvironment) {
  901. var self = this;
  902. self['@environment'] = anEnvironment;
  903. return self;
  904. }
  905. }),
  906. smalltalk.HLBrowserModel);
  907. smalltalk.addMethod(
  908. "_packages",
  909. smalltalk.method({
  910. selector: "packages",
  911. fn: function () {
  912. var self = this;
  913. var $1;
  914. $1 = smalltalk.send(smalltalk.send(self, "_environment", []), "_packages", []);
  915. return $1;
  916. }
  917. }),
  918. smalltalk.HLBrowserModel);
  919. smalltalk.addMethod(
  920. "_selectedClass",
  921. smalltalk.method({
  922. selector: "selectedClass",
  923. fn: function () {
  924. var self = this;
  925. return self['@selectedClass'];
  926. }
  927. }),
  928. smalltalk.HLBrowserModel);
  929. smalltalk.addMethod(
  930. "_selectedClass_",
  931. smalltalk.method({
  932. selector: "selectedClass:",
  933. fn: function (aClass){
  934. var self=this;
  935. var $1,$2,$3;
  936. $1=smalltalk.send(self["@selectedClass"],"__eq",[aClass]);
  937. if(! smalltalk.assert($1)){
  938. if(($receiver = aClass) == nil || $receiver == undefined){
  939. self["@selectedClass"]=nil;
  940. self["@selectedClass"];
  941. } else {
  942. $2=smalltalk.send(self,"_showInstance",[]);
  943. if(smalltalk.assert($2)){
  944. self["@selectedClass"]=smalltalk.send(aClass,"_theNonMetaClass",[]);
  945. self["@selectedClass"];
  946. } else {
  947. self["@selectedClass"]=smalltalk.send(aClass,"_theMetaClass",[]);
  948. self["@selectedClass"];
  949. };
  950. };
  951. smalltalk.send(self,"_selectedMethod_",[nil]);
  952. $3=smalltalk.send(self,"_selectedProtocol_",[nil]);
  953. $3;
  954. };
  955. smalltalk.send(smalltalk.send(self,"_announcer",[]),"_announce_",[smalltalk.send((smalltalk.HLClassSelected || HLClassSelected),"_on_",[smalltalk.send(self,"_selectedClass",[])])]);
  956. return self}
  957. }),
  958. smalltalk.HLBrowserModel);
  959. smalltalk.addMethod(
  960. "_selectedMethod",
  961. smalltalk.method({
  962. selector: "selectedMethod",
  963. fn: function () {
  964. var self = this;
  965. return self['@selectedMethod'];
  966. }
  967. }),
  968. smalltalk.HLBrowserModel);
  969. smalltalk.addMethod(
  970. "_selectedMethod_",
  971. smalltalk.method({
  972. selector: "selectedMethod:",
  973. fn: function (aCompiledMethod){
  974. var self=this;
  975. var $1;
  976. $1=smalltalk.send(self["@selectedMethod"],"__eq",[aCompiledMethod]);
  977. if(! smalltalk.assert($1)){
  978. self["@selectedMethod"]=aCompiledMethod;
  979. self["@selectedMethod"];
  980. };
  981. smalltalk.send(smalltalk.send(self,"_announcer",[]),"_announce_",[smalltalk.send((smalltalk.HLMethodSelected || HLMethodSelected),"_on_",[aCompiledMethod])]);
  982. return self}
  983. }),
  984. smalltalk.HLBrowserModel);
  985. smalltalk.addMethod(
  986. "_selectedPackage",
  987. smalltalk.method({
  988. selector: "selectedPackage",
  989. fn: function () {
  990. var self = this;
  991. return self['@selectedPackage'];
  992. }
  993. }),
  994. smalltalk.HLBrowserModel);
  995. smalltalk.addMethod(
  996. "_selectedPackage_",
  997. smalltalk.method({
  998. selector: "selectedPackage:",
  999. fn: function (aPackage){
  1000. var self=this;
  1001. var $1;
  1002. $1=smalltalk.send(self["@selectedPackage"],"__eq",[aPackage]);
  1003. if(! smalltalk.assert($1)){
  1004. self["@selectedPackage"]=aPackage;
  1005. self["@selectedPackage"];
  1006. smalltalk.send(self,"_selectedClass_",[nil]);
  1007. };
  1008. smalltalk.send(smalltalk.send(self,"_announcer",[]),"_announce_",[smalltalk.send((smalltalk.HLPackageSelected || HLPackageSelected),"_on_",[aPackage])]);
  1009. return self}
  1010. }),
  1011. smalltalk.HLBrowserModel);
  1012. smalltalk.addMethod(
  1013. "_selectedProtocol",
  1014. smalltalk.method({
  1015. selector: "selectedProtocol",
  1016. fn: function () {
  1017. var self = this;
  1018. return self['@selectedProtocol'];
  1019. }
  1020. }),
  1021. smalltalk.HLBrowserModel);
  1022. smalltalk.addMethod(
  1023. "_selectedProtocol_",
  1024. smalltalk.method({
  1025. selector: "selectedProtocol:",
  1026. fn: function (aString){
  1027. var self=this;
  1028. var $1;
  1029. $1=smalltalk.send(self["@selectedProtocol"],"__eq",[aString]);
  1030. if(! smalltalk.assert($1)){
  1031. self["@selectedProtocol"]=aString;
  1032. self["@selectedProtocol"];
  1033. smalltalk.send(self,"_selectedMethod_",[nil]);
  1034. };
  1035. smalltalk.send(smalltalk.send(self,"_announcer",[]),"_announce_",[smalltalk.send((smalltalk.HLProtocolSelected || HLProtocolSelected),"_on_",[aString])]);
  1036. return self}
  1037. }),
  1038. smalltalk.HLBrowserModel);
  1039. smalltalk.addMethod(
  1040. "_showComment",
  1041. smalltalk.method({
  1042. selector: "showComment",
  1043. fn: function () {
  1044. var self = this;
  1045. var $1;
  1046. if (($receiver = self['@showComment']) == nil || $receiver == undefined) {
  1047. $1 = false;
  1048. } else {
  1049. $1 = self['@showComment'];
  1050. }
  1051. return $1;
  1052. }
  1053. }),
  1054. smalltalk.HLBrowserModel);
  1055. smalltalk.addMethod(
  1056. "_showComment_",
  1057. smalltalk.method({
  1058. selector: "showComment:",
  1059. fn: function (aBoolean) {
  1060. var self = this;
  1061. self['@showComment'] = aBoolean;
  1062. smalltalk.send(smalltalk.send(self, "_announcer", []), "_announce_", [smalltalk.send(smalltalk.HLShowCommentToggled || HLShowCommentToggled, "_new", [])]);
  1063. return self;
  1064. }
  1065. }),
  1066. smalltalk.HLBrowserModel);
  1067. smalltalk.addMethod(
  1068. "_showInstance",
  1069. smalltalk.method({
  1070. selector: "showInstance",
  1071. fn: function () {
  1072. var self = this;
  1073. var $1;
  1074. if (($receiver = self['@showInstance']) == nil ||
  1075. $receiver == undefined) {
  1076. $1 = true;
  1077. } else {
  1078. $1 = self['@showInstance'];
  1079. }
  1080. return $1;
  1081. }
  1082. }),
  1083. smalltalk.HLBrowserModel);
  1084. smalltalk.addMethod(
  1085. "_showInstance_",
  1086. smalltalk.method({
  1087. selector: "showInstance:",
  1088. fn: function (aBoolean) {
  1089. var self = this;
  1090. var $1, $2;
  1091. self['@showInstance'] = aBoolean;
  1092. $1 = smalltalk.send(self, "_selectedClass", []);
  1093. if (($receiver = $1) == nil || $receiver == undefined) {
  1094. } else {
  1095. if (smalltalk.assert(aBoolean)) {
  1096. $2 = smalltalk.send(smalltalk.send(self, "_selectedClass", []), "_theNonMetaClass", []);
  1097. } else {
  1098. $2 = smalltalk.send(smalltalk.send(self, "_selectedClass", []), "_theMetaClass", []);
  1099. }
  1100. smalltalk.send(self, "_selectedClass_", [$2]);
  1101. }
  1102. smalltalk.send(smalltalk.send(self, "_announcer", []), "_announce_", [smalltalk.send(smalltalk.HLShowInstanceToggled || HLShowInstanceToggled, "_new", [])]);
  1103. return self;
  1104. }
  1105. }),
  1106. smalltalk.HLBrowserModel);
  1107. smalltalk.addMethod(
  1108. "_subscribe_",
  1109. smalltalk.method({
  1110. selector: "subscribe:",
  1111. fn: function (aWidget) {
  1112. var self = this;
  1113. smalltalk.send(aWidget, "_subscribeTo_", [smalltalk.send(self, "_announcer", [])]);
  1114. return self;
  1115. }
  1116. }),
  1117. smalltalk.HLBrowserModel);
  1118. smalltalk.addClass('HLBrowserSourceWidget', smalltalk.HLWidget, ['model', 'sourceArea'], 'Helios-Browser');
  1119. smalltalk.addMethod(
  1120. "_classSelected_",
  1121. smalltalk.method({
  1122. selector: "classSelected:",
  1123. fn: function (aClass) {
  1124. var self = this;
  1125. var $1;
  1126. if (($receiver = aClass) == nil || $receiver == undefined) {
  1127. $1 = smalltalk.send(self, "_contents_", [""]);
  1128. return $1;
  1129. } else {
  1130. }
  1131. smalltalk.send(self, "_contents_", [smalltalk.send(aClass, "_definition", [])]);
  1132. return self;
  1133. }
  1134. }),
  1135. smalltalk.HLBrowserSourceWidget);
  1136. smalltalk.addMethod(
  1137. "_contents",
  1138. smalltalk.method({
  1139. selector: "contents",
  1140. fn: function () {
  1141. var self = this;
  1142. var $1;
  1143. $1 = smalltalk.send(smalltalk.send(self, "_sourceArea", []), "_contents", []);
  1144. return $1;
  1145. }
  1146. }),
  1147. smalltalk.HLBrowserSourceWidget);
  1148. smalltalk.addMethod(
  1149. "_contents_",
  1150. smalltalk.method({
  1151. selector: "contents:",
  1152. fn: function (aString) {
  1153. var self = this;
  1154. smalltalk.send(smalltalk.send(self, "_sourceArea", []), "_contents_", [aString]);
  1155. return self;
  1156. }
  1157. }),
  1158. smalltalk.HLBrowserSourceWidget);
  1159. smalltalk.addMethod(
  1160. "_methodSelected_",
  1161. smalltalk.method({
  1162. selector: "methodSelected:",
  1163. fn: function (aCompiledMethod) {
  1164. var self = this;
  1165. var $1;
  1166. if (($receiver = aCompiledMethod) == nil || $receiver == undefined) {
  1167. $1 = smalltalk.send(self, "_contents_", [""]);
  1168. return $1;
  1169. } else {
  1170. }
  1171. smalltalk.send(self, "_contents_", [smalltalk.send(aCompiledMethod, "_source", [])]);
  1172. return self;
  1173. }
  1174. }),
  1175. smalltalk.HLBrowserSourceWidget);
  1176. smalltalk.addMethod(
  1177. "_model",
  1178. smalltalk.method({
  1179. selector: "model",
  1180. fn: function () {
  1181. var self = this;
  1182. return self['@model'];
  1183. }
  1184. }),
  1185. smalltalk.HLBrowserSourceWidget);
  1186. smalltalk.addMethod(
  1187. "_model_",
  1188. smalltalk.method({
  1189. selector: "model:",
  1190. fn: function (aBrowserModel) {
  1191. var self = this;
  1192. self['@model'] = aBrowserModel;
  1193. smalltalk.send(self['@model'], "_subscribe_", [self]);
  1194. return self;
  1195. }
  1196. }),
  1197. smalltalk.HLBrowserSourceWidget);
  1198. smalltalk.addMethod(
  1199. "_protocolSelected_",
  1200. smalltalk.method({
  1201. selector: "protocolSelected:",
  1202. fn: function (aString) {
  1203. var self = this;
  1204. var $1, $2;
  1205. $1 = smalltalk.send(smalltalk.send(self, "_model", []), "_selectedClass", []);
  1206. if (($receiver = $1) == nil || $receiver == undefined) {
  1207. $2 = smalltalk.send(self, "_contents_", [""]);
  1208. return $2;
  1209. } else {
  1210. }
  1211. smalltalk.send(self, "_contents_", [smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_selectedClass", []), "_definition", [])]);
  1212. return self;
  1213. }
  1214. }),
  1215. smalltalk.HLBrowserSourceWidget);
  1216. smalltalk.addMethod(
  1217. "_renderContentOn_",
  1218. smalltalk.method({
  1219. selector: "renderContentOn:",
  1220. fn: function (html) {
  1221. var self = this;
  1222. smalltalk.send(smalltalk.send(self, "_sourceArea", []), "_renderOn_", [html]);
  1223. return self;
  1224. }
  1225. }),
  1226. smalltalk.HLBrowserSourceWidget);
  1227. smalltalk.addMethod(
  1228. "_sourceArea",
  1229. smalltalk.method({
  1230. selector: "sourceArea",
  1231. fn: function () {
  1232. var self = this;
  1233. var $1;
  1234. if (($receiver = self['@sourceArea']) == nil || $receiver == undefined) {
  1235. self['@sourceArea'] = smalltalk.send(smalltalk.HLSourceArea || HLSourceArea, "_new", []);
  1236. $1 = self['@sourceArea'];
  1237. } else {
  1238. $1 = self['@sourceArea'];
  1239. }
  1240. return $1;
  1241. }
  1242. }),
  1243. smalltalk.HLBrowserSourceWidget);
  1244. smalltalk.addMethod(
  1245. "_subscribeTo_",
  1246. smalltalk.method({
  1247. selector: "subscribeTo:",
  1248. fn: function (anAnnouncer) {
  1249. var self = this;
  1250. smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLMethodSelected || HLMethodSelected, function (ann) {return smalltalk.send(self, "_methodSelected_", [smalltalk.send(ann, "_item", [])]);}]);
  1251. smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLClassSelected || HLClassSelected, function (ann) {return smalltalk.send(self, "_classSelected_", [smalltalk.send(ann, "_item", [])]);}]);
  1252. smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLProtocolSelected || HLProtocolSelected, function (ann) {return smalltalk.send(self, "_protocolSelected_", [smalltalk.send(ann, "_item", [])]);}]);
  1253. return self;
  1254. }
  1255. }),
  1256. smalltalk.HLBrowserSourceWidget);
  1257. smalltalk.addMethod(
  1258. "_on_",
  1259. smalltalk.method({
  1260. selector: "on:",
  1261. fn: function (aBrowserModel) {
  1262. var self = this;
  1263. var $2, $3, $1;
  1264. $2 = smalltalk.send(self, "_new", []);
  1265. smalltalk.send($2, "_model_", [aBrowserModel]);
  1266. $3 = smalltalk.send($2, "_yourself", []);
  1267. $1 = $3;
  1268. return $1;
  1269. }
  1270. }),
  1271. smalltalk.HLBrowserSourceWidget.klass);