Helios-References.js 44 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318
  1. define(["amber/boot", "require", "helios/Helios-Core"], function($boot,requirejs){"use strict";
  2. var $core=$boot.api,nil=$boot.nilAsValue,$nil=$boot.nilAsReceiver,$recv=$boot.asReceiver,$globals=$boot.globals;
  3. var $pkg = $core.addPackage("Helios-References");
  4. $pkg.transport = {"type":"amd","amdNamespace":"helios"};
  5. $core.addClass("HLReferences", $globals.HLWidget, "Helios-References");
  6. $core.setSlots($globals.HLReferences, ["model", "sendersListWidget", "implementorsListWidget", "classReferencesListWidget", "regexpListWidget", "sourceCodeWidget"]);
  7. $core.addMethod(
  8. $core.method({
  9. selector: "classReferencesListWidget",
  10. protocol: "accessing",
  11. //>>excludeStart("ide", pragmas.excludeIdeData);
  12. args: [],
  13. source: "classReferencesListWidget\x0a\x09^ classReferencesListWidget ifNil: [\x0a \x09classReferencesListWidget := HLClassReferencesListWidget on: self model.\x0a\x09\x09classReferencesListWidget next: self regexpListWidget ]",
  14. referencedClasses: ["HLClassReferencesListWidget"],
  15. //>>excludeEnd("ide");
  16. pragmas: [],
  17. messageSends: ["ifNil:", "on:", "model", "next:", "regexpListWidget"]
  18. }, function ($methodClass){ return function (){
  19. var self=this,$self=this;
  20. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  21. return $core.withContext(function($ctx1) {
  22. //>>excludeEnd("ctx");
  23. var $1;
  24. $1=$self.classReferencesListWidget;
  25. if($1 == null || $1.a$nil){
  26. $self.classReferencesListWidget=$recv($globals.HLClassReferencesListWidget)._on_($self._model());
  27. return $recv($self.classReferencesListWidget)._next_($self._regexpListWidget());
  28. } else {
  29. return $1;
  30. }
  31. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  32. }, function($ctx1) {$ctx1.fill(self,"classReferencesListWidget",{})});
  33. //>>excludeEnd("ctx");
  34. }; }),
  35. $globals.HLReferences);
  36. $core.addMethod(
  37. $core.method({
  38. selector: "implementorsListWidget",
  39. protocol: "accessing",
  40. //>>excludeStart("ide", pragmas.excludeIdeData);
  41. args: [],
  42. source: "implementorsListWidget\x0a\x09^ implementorsListWidget ifNil: [\x0a \x09implementorsListWidget := HLImplementorsListWidget on: self model.\x0a\x09\x09implementorsListWidget next: self classReferencesListWidget ]",
  43. referencedClasses: ["HLImplementorsListWidget"],
  44. //>>excludeEnd("ide");
  45. pragmas: [],
  46. messageSends: ["ifNil:", "on:", "model", "next:", "classReferencesListWidget"]
  47. }, function ($methodClass){ return function (){
  48. var self=this,$self=this;
  49. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  50. return $core.withContext(function($ctx1) {
  51. //>>excludeEnd("ctx");
  52. var $1;
  53. $1=$self.implementorsListWidget;
  54. if($1 == null || $1.a$nil){
  55. $self.implementorsListWidget=$recv($globals.HLImplementorsListWidget)._on_($self._model());
  56. return $recv($self.implementorsListWidget)._next_($self._classReferencesListWidget());
  57. } else {
  58. return $1;
  59. }
  60. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  61. }, function($ctx1) {$ctx1.fill(self,"implementorsListWidget",{})});
  62. //>>excludeEnd("ctx");
  63. }; }),
  64. $globals.HLReferences);
  65. $core.addMethod(
  66. $core.method({
  67. selector: "model",
  68. protocol: "accessing",
  69. //>>excludeStart("ide", pragmas.excludeIdeData);
  70. args: [],
  71. source: "model\x0a\x09^ model ifNil: [\x0a\x09\x09model := (HLReferencesModel new\x0a\x09\x09\x09environment: self manager environment;\x0a\x09\x09\x09yourself) ]",
  72. referencedClasses: ["HLReferencesModel"],
  73. //>>excludeEnd("ide");
  74. pragmas: [],
  75. messageSends: ["ifNil:", "environment:", "new", "environment", "manager", "yourself"]
  76. }, function ($methodClass){ return function (){
  77. var self=this,$self=this;
  78. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  79. return $core.withContext(function($ctx1) {
  80. //>>excludeEnd("ctx");
  81. var $1,$2;
  82. $1=$self.model;
  83. if($1 == null || $1.a$nil){
  84. $2=$recv($globals.HLReferencesModel)._new();
  85. $recv($2)._environment_($recv($self._manager())._environment());
  86. $self.model=$recv($2)._yourself();
  87. return $self.model;
  88. } else {
  89. return $1;
  90. }
  91. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  92. }, function($ctx1) {$ctx1.fill(self,"model",{})});
  93. //>>excludeEnd("ctx");
  94. }; }),
  95. $globals.HLReferences);
  96. $core.addMethod(
  97. $core.method({
  98. selector: "model:",
  99. protocol: "accessing",
  100. //>>excludeStart("ide", pragmas.excludeIdeData);
  101. args: ["aModel"],
  102. source: "model: aModel\x0a\x09model := aModel",
  103. referencedClasses: [],
  104. //>>excludeEnd("ide");
  105. pragmas: [],
  106. messageSends: []
  107. }, function ($methodClass){ return function (aModel){
  108. var self=this,$self=this;
  109. $self.model=aModel;
  110. return self;
  111. }; }),
  112. $globals.HLReferences);
  113. $core.addMethod(
  114. $core.method({
  115. selector: "regexpListWidget",
  116. protocol: "accessing",
  117. //>>excludeStart("ide", pragmas.excludeIdeData);
  118. args: [],
  119. source: "regexpListWidget\x0a\x09^ regexpListWidget ifNil: [\x0a \x09regexpListWidget := HLRegexpListWidget on: self model.\x0a\x09\x09regexpListWidget next: self sourceCodeWidget ]",
  120. referencedClasses: ["HLRegexpListWidget"],
  121. //>>excludeEnd("ide");
  122. pragmas: [],
  123. messageSends: ["ifNil:", "on:", "model", "next:", "sourceCodeWidget"]
  124. }, function ($methodClass){ return function (){
  125. var self=this,$self=this;
  126. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  127. return $core.withContext(function($ctx1) {
  128. //>>excludeEnd("ctx");
  129. var $1;
  130. $1=$self.regexpListWidget;
  131. if($1 == null || $1.a$nil){
  132. $self.regexpListWidget=$recv($globals.HLRegexpListWidget)._on_($self._model());
  133. return $recv($self.regexpListWidget)._next_($self._sourceCodeWidget());
  134. } else {
  135. return $1;
  136. }
  137. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  138. }, function($ctx1) {$ctx1.fill(self,"regexpListWidget",{})});
  139. //>>excludeEnd("ctx");
  140. }; }),
  141. $globals.HLReferences);
  142. $core.addMethod(
  143. $core.method({
  144. selector: "registerBindingsOn:",
  145. protocol: "actions",
  146. //>>excludeStart("ide", pragmas.excludeIdeData);
  147. args: ["aBindingGroup"],
  148. source: "registerBindingsOn: aBindingGroup\x0a\x09HLToolCommand \x0a\x09\x09registerConcreteClassesOn: aBindingGroup \x0a\x09\x09for: self model",
  149. referencedClasses: ["HLToolCommand"],
  150. //>>excludeEnd("ide");
  151. pragmas: [],
  152. messageSends: ["registerConcreteClassesOn:for:", "model"]
  153. }, function ($methodClass){ return function (aBindingGroup){
  154. var self=this,$self=this;
  155. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  156. return $core.withContext(function($ctx1) {
  157. //>>excludeEnd("ctx");
  158. $recv($globals.HLToolCommand)._registerConcreteClassesOn_for_(aBindingGroup,$self._model());
  159. return self;
  160. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  161. }, function($ctx1) {$ctx1.fill(self,"registerBindingsOn:",{aBindingGroup:aBindingGroup})});
  162. //>>excludeEnd("ctx");
  163. }; }),
  164. $globals.HLReferences);
  165. $core.addMethod(
  166. $core.method({
  167. selector: "renderContentOn:",
  168. protocol: "rendering",
  169. //>>excludeStart("ide", pragmas.excludeIdeData);
  170. args: ["html"],
  171. source: "renderContentOn: html\x0a\x09html with: (HLContainer with: (HLHorizontalSplitter \x0a \x09with: (HLVerticalSplitter\x0a \x09with: (HLVerticalSplitter\x0a \x09with: self sendersListWidget\x0a with: self implementorsListWidget)\x0a with: (HLVerticalSplitter\x0a \x09with: self classReferencesListWidget\x0a with: self regexpListWidget)) \x0a with: self sourceCodeWidget)).\x0a\x09\x0a\x09self sendersListWidget focus",
  172. referencedClasses: ["HLContainer", "HLHorizontalSplitter", "HLVerticalSplitter"],
  173. //>>excludeEnd("ide");
  174. pragmas: [],
  175. messageSends: ["with:", "with:with:", "sendersListWidget", "implementorsListWidget", "classReferencesListWidget", "regexpListWidget", "sourceCodeWidget", "focus"]
  176. }, function ($methodClass){ return function (html){
  177. var self=this,$self=this;
  178. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  179. return $core.withContext(function($ctx1) {
  180. //>>excludeEnd("ctx");
  181. [$recv(html)._with_($recv($globals.HLContainer)._with_([$recv($globals.HLHorizontalSplitter)._with_with_([$recv($globals.HLVerticalSplitter)._with_with_([$recv($globals.HLVerticalSplitter)._with_with_([$self._sendersListWidget()
  182. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  183. ,$ctx1.sendIdx["sendersListWidget"]=1
  184. //>>excludeEnd("ctx");
  185. ][0],$self._implementorsListWidget())
  186. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  187. ,$ctx1.sendIdx["with:with:"]=3
  188. //>>excludeEnd("ctx");
  189. ][0],$recv($globals.HLVerticalSplitter)._with_with_($self._classReferencesListWidget(),$self._regexpListWidget()))
  190. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  191. ,$ctx1.sendIdx["with:with:"]=2
  192. //>>excludeEnd("ctx");
  193. ][0],$self._sourceCodeWidget())
  194. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  195. ,$ctx1.sendIdx["with:with:"]=1
  196. //>>excludeEnd("ctx");
  197. ][0]))
  198. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  199. ,$ctx1.sendIdx["with:"]=1
  200. //>>excludeEnd("ctx");
  201. ][0];
  202. $recv($self._sendersListWidget())._focus();
  203. return self;
  204. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  205. }, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html})});
  206. //>>excludeEnd("ctx");
  207. }; }),
  208. $globals.HLReferences);
  209. $core.addMethod(
  210. $core.method({
  211. selector: "search:",
  212. protocol: "actions",
  213. //>>excludeStart("ide", pragmas.excludeIdeData);
  214. args: ["aString"],
  215. source: "search: aString\x0a\x09self model search: aString.\x0a\x09self setTabLabel: aString",
  216. referencedClasses: [],
  217. //>>excludeEnd("ide");
  218. pragmas: [],
  219. messageSends: ["search:", "model", "setTabLabel:"]
  220. }, function ($methodClass){ return function (aString){
  221. var self=this,$self=this;
  222. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  223. return $core.withContext(function($ctx1) {
  224. //>>excludeEnd("ctx");
  225. $recv($self._model())._search_(aString);
  226. $self._setTabLabel_(aString);
  227. return self;
  228. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  229. }, function($ctx1) {$ctx1.fill(self,"search:",{aString:aString})});
  230. //>>excludeEnd("ctx");
  231. }; }),
  232. $globals.HLReferences);
  233. $core.addMethod(
  234. $core.method({
  235. selector: "sendersListWidget",
  236. protocol: "accessing",
  237. //>>excludeStart("ide", pragmas.excludeIdeData);
  238. args: [],
  239. source: "sendersListWidget\x0a\x09^ sendersListWidget ifNil: [\x0a \x09sendersListWidget := HLSendersListWidget on: self model.\x0a\x09\x09sendersListWidget next: self implementorsListWidget ]",
  240. referencedClasses: ["HLSendersListWidget"],
  241. //>>excludeEnd("ide");
  242. pragmas: [],
  243. messageSends: ["ifNil:", "on:", "model", "next:", "implementorsListWidget"]
  244. }, function ($methodClass){ return function (){
  245. var self=this,$self=this;
  246. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  247. return $core.withContext(function($ctx1) {
  248. //>>excludeEnd("ctx");
  249. var $1;
  250. $1=$self.sendersListWidget;
  251. if($1 == null || $1.a$nil){
  252. $self.sendersListWidget=$recv($globals.HLSendersListWidget)._on_($self._model());
  253. return $recv($self.sendersListWidget)._next_($self._implementorsListWidget());
  254. } else {
  255. return $1;
  256. }
  257. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  258. }, function($ctx1) {$ctx1.fill(self,"sendersListWidget",{})});
  259. //>>excludeEnd("ctx");
  260. }; }),
  261. $globals.HLReferences);
  262. $core.addMethod(
  263. $core.method({
  264. selector: "sourceCodeWidget",
  265. protocol: "accessing",
  266. //>>excludeStart("ide", pragmas.excludeIdeData);
  267. args: [],
  268. source: "sourceCodeWidget\x0a\x09^ sourceCodeWidget ifNil: [\x0a \x09sourceCodeWidget := HLBrowserCodeWidget new\x0a\x09\x09\x09browserModel: self model;\x0a\x09\x09\x09yourself ]",
  269. referencedClasses: ["HLBrowserCodeWidget"],
  270. //>>excludeEnd("ide");
  271. pragmas: [],
  272. messageSends: ["ifNil:", "browserModel:", "new", "model", "yourself"]
  273. }, function ($methodClass){ return function (){
  274. var self=this,$self=this;
  275. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  276. return $core.withContext(function($ctx1) {
  277. //>>excludeEnd("ctx");
  278. var $1,$2;
  279. $1=$self.sourceCodeWidget;
  280. if($1 == null || $1.a$nil){
  281. $2=$recv($globals.HLBrowserCodeWidget)._new();
  282. $recv($2)._browserModel_($self._model());
  283. $self.sourceCodeWidget=$recv($2)._yourself();
  284. return $self.sourceCodeWidget;
  285. } else {
  286. return $1;
  287. }
  288. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  289. }, function($ctx1) {$ctx1.fill(self,"sourceCodeWidget",{})});
  290. //>>excludeEnd("ctx");
  291. }; }),
  292. $globals.HLReferences);
  293. $core.addMethod(
  294. $core.method({
  295. selector: "canBeOpenAsTab",
  296. protocol: "testing",
  297. //>>excludeStart("ide", pragmas.excludeIdeData);
  298. args: [],
  299. source: "canBeOpenAsTab\x0a\x09^ false",
  300. referencedClasses: [],
  301. //>>excludeEnd("ide");
  302. pragmas: [],
  303. messageSends: []
  304. }, function ($methodClass){ return function (){
  305. var self=this,$self=this;
  306. return false;
  307. }; }),
  308. $globals.HLReferences.a$cls);
  309. $core.addMethod(
  310. $core.method({
  311. selector: "tabClass",
  312. protocol: "accessing",
  313. //>>excludeStart("ide", pragmas.excludeIdeData);
  314. args: [],
  315. source: "tabClass\x0a\x09^ 'references'",
  316. referencedClasses: [],
  317. //>>excludeEnd("ide");
  318. pragmas: [],
  319. messageSends: []
  320. }, function ($methodClass){ return function (){
  321. var self=this,$self=this;
  322. return "references";
  323. }; }),
  324. $globals.HLReferences.a$cls);
  325. $core.addMethod(
  326. $core.method({
  327. selector: "tabLabel",
  328. protocol: "accessing",
  329. //>>excludeStart("ide", pragmas.excludeIdeData);
  330. args: [],
  331. source: "tabLabel\x0a\x09^ 'References'",
  332. referencedClasses: [],
  333. //>>excludeEnd("ide");
  334. pragmas: [],
  335. messageSends: []
  336. }, function ($methodClass){ return function (){
  337. var self=this,$self=this;
  338. return "References";
  339. }; }),
  340. $globals.HLReferences.a$cls);
  341. $core.addMethod(
  342. $core.method({
  343. selector: "tabPriority",
  344. protocol: "accessing",
  345. //>>excludeStart("ide", pragmas.excludeIdeData);
  346. args: [],
  347. source: "tabPriority\x0a\x09^ 100",
  348. referencedClasses: [],
  349. //>>excludeEnd("ide");
  350. pragmas: [],
  351. messageSends: []
  352. }, function ($methodClass){ return function (){
  353. var self=this,$self=this;
  354. return (100);
  355. }; }),
  356. $globals.HLReferences.a$cls);
  357. $core.addClass("HLReferencesListWidget", $globals.HLToolListWidget, "Helios-References");
  358. $core.addMethod(
  359. $core.method({
  360. selector: "activateListItem:",
  361. protocol: "actions",
  362. //>>excludeStart("ide", pragmas.excludeIdeData);
  363. args: ["anItem"],
  364. source: "activateListItem: anItem\x0a\x09self model withChangesDo: [ super activateListItem: anItem ]",
  365. referencedClasses: [],
  366. //>>excludeEnd("ide");
  367. pragmas: [],
  368. messageSends: ["withChangesDo:", "model", "activateListItem:"]
  369. }, function ($methodClass){ return function (anItem){
  370. var self=this,$self=this;
  371. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  372. return $core.withContext(function($ctx1) {
  373. //>>excludeEnd("ctx");
  374. $recv($self._model())._withChangesDo_((function(){
  375. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  376. return $core.withContext(function($ctx2) {
  377. //>>excludeEnd("ctx");
  378. return [(
  379. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  380. $ctx2.supercall = true,
  381. //>>excludeEnd("ctx");
  382. ($methodClass.superclass||$boot.nilAsClass).fn.prototype._activateListItem_.call($self,anItem))
  383. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  384. ,$ctx2.supercall = false
  385. //>>excludeEnd("ctx");
  386. ][0];
  387. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  388. }, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)});
  389. //>>excludeEnd("ctx");
  390. }));
  391. return self;
  392. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  393. }, function($ctx1) {$ctx1.fill(self,"activateListItem:",{anItem:anItem})});
  394. //>>excludeEnd("ctx");
  395. }; }),
  396. $globals.HLReferencesListWidget);
  397. $core.addMethod(
  398. $core.method({
  399. selector: "commandCategory",
  400. protocol: "accessing",
  401. //>>excludeStart("ide", pragmas.excludeIdeData);
  402. args: [],
  403. source: "commandCategory\x0a\x09^ 'Methods'",
  404. referencedClasses: [],
  405. //>>excludeEnd("ide");
  406. pragmas: [],
  407. messageSends: []
  408. }, function ($methodClass){ return function (){
  409. var self=this,$self=this;
  410. return "Methods";
  411. }; }),
  412. $globals.HLReferencesListWidget);
  413. $core.addMethod(
  414. $core.method({
  415. selector: "label",
  416. protocol: "accessing",
  417. //>>excludeStart("ide", pragmas.excludeIdeData);
  418. args: [],
  419. source: "label\x0a\x09^ 'List'",
  420. referencedClasses: [],
  421. //>>excludeEnd("ide");
  422. pragmas: [],
  423. messageSends: []
  424. }, function ($methodClass){ return function (){
  425. var self=this,$self=this;
  426. return "List";
  427. }; }),
  428. $globals.HLReferencesListWidget);
  429. $core.addMethod(
  430. $core.method({
  431. selector: "observeModel",
  432. protocol: "actions",
  433. //>>excludeStart("ide", pragmas.excludeIdeData);
  434. args: [],
  435. source: "observeModel\x0a\x09self model announcer\x0a\x09\x09on: HLSearchReferences\x0a\x09\x09do: [ :ann | self onSearchReferences: ann searchString ];\x0a\x09\x09on: HLMethodSelected\x0a\x09\x09do: [ :ann | self onMethodSelected: ann item ]",
  436. referencedClasses: ["HLSearchReferences", "HLMethodSelected"],
  437. //>>excludeEnd("ide");
  438. pragmas: [],
  439. messageSends: ["on:do:", "announcer", "model", "onSearchReferences:", "searchString", "onMethodSelected:", "item"]
  440. }, function ($methodClass){ return function (){
  441. var self=this,$self=this;
  442. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  443. return $core.withContext(function($ctx1) {
  444. //>>excludeEnd("ctx");
  445. var $1;
  446. $1=$recv($self._model())._announcer();
  447. [$recv($1)._on_do_($globals.HLSearchReferences,(function(ann){
  448. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  449. return $core.withContext(function($ctx2) {
  450. //>>excludeEnd("ctx");
  451. return $self._onSearchReferences_($recv(ann)._searchString());
  452. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  453. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1,1)});
  454. //>>excludeEnd("ctx");
  455. }))
  456. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  457. ,$ctx1.sendIdx["on:do:"]=1
  458. //>>excludeEnd("ctx");
  459. ][0];
  460. $recv($1)._on_do_($globals.HLMethodSelected,(function(ann){
  461. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  462. return $core.withContext(function($ctx2) {
  463. //>>excludeEnd("ctx");
  464. return $self._onMethodSelected_($recv(ann)._item());
  465. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  466. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1,2)});
  467. //>>excludeEnd("ctx");
  468. }));
  469. return self;
  470. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  471. }, function($ctx1) {$ctx1.fill(self,"observeModel",{})});
  472. //>>excludeEnd("ctx");
  473. }; }),
  474. $globals.HLReferencesListWidget);
  475. $core.addMethod(
  476. $core.method({
  477. selector: "onMethodSelected:",
  478. protocol: "reactions",
  479. //>>excludeStart("ide", pragmas.excludeIdeData);
  480. args: ["aMethod"],
  481. source: "onMethodSelected: aMethod\x0a\x09aMethod ifNil: [ ^ self ].\x0a\x09(self items includes: aMethod) ifFalse: [ ^ self ].\x0a\x09\x0a\x09self \x0a\x09\x09selectedItem: aMethod;\x0a\x09\x09activateItem: aMethod",
  482. referencedClasses: [],
  483. //>>excludeEnd("ide");
  484. pragmas: [],
  485. messageSends: ["ifNil:", "ifFalse:", "includes:", "items", "selectedItem:", "activateItem:"]
  486. }, function ($methodClass){ return function (aMethod){
  487. var self=this,$self=this;
  488. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  489. return $core.withContext(function($ctx1) {
  490. //>>excludeEnd("ctx");
  491. if(aMethod == null || aMethod.a$nil){
  492. return self;
  493. } else {
  494. aMethod;
  495. }
  496. if(!$core.assert($recv($self._items())._includes_(aMethod))){
  497. return self;
  498. }
  499. $self._selectedItem_(aMethod);
  500. $self._activateItem_(aMethod);
  501. return self;
  502. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  503. }, function($ctx1) {$ctx1.fill(self,"onMethodSelected:",{aMethod:aMethod})});
  504. //>>excludeEnd("ctx");
  505. }; }),
  506. $globals.HLReferencesListWidget);
  507. $core.addMethod(
  508. $core.method({
  509. selector: "onSearchReferences:",
  510. protocol: "reactions",
  511. //>>excludeStart("ide", pragmas.excludeIdeData);
  512. args: ["aString"],
  513. source: "onSearchReferences: aString\x0a\x09self subclassResponsibility",
  514. referencedClasses: [],
  515. //>>excludeEnd("ide");
  516. pragmas: [],
  517. messageSends: ["subclassResponsibility"]
  518. }, function ($methodClass){ return function (aString){
  519. var self=this,$self=this;
  520. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  521. return $core.withContext(function($ctx1) {
  522. //>>excludeEnd("ctx");
  523. $self._subclassResponsibility();
  524. return self;
  525. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  526. }, function($ctx1) {$ctx1.fill(self,"onSearchReferences:",{aString:aString})});
  527. //>>excludeEnd("ctx");
  528. }; }),
  529. $globals.HLReferencesListWidget);
  530. $core.addMethod(
  531. $core.method({
  532. selector: "renderItemLabel:on:",
  533. protocol: "rendering",
  534. //>>excludeStart("ide", pragmas.excludeIdeData);
  535. args: ["aMethod", "html"],
  536. source: "renderItemLabel: aMethod on: html\x0a\x09html with: aMethod asString",
  537. referencedClasses: [],
  538. //>>excludeEnd("ide");
  539. pragmas: [],
  540. messageSends: ["with:", "asString"]
  541. }, function ($methodClass){ return function (aMethod,html){
  542. var self=this,$self=this;
  543. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  544. return $core.withContext(function($ctx1) {
  545. //>>excludeEnd("ctx");
  546. $recv(html)._with_($recv(aMethod)._asString());
  547. return self;
  548. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  549. }, function($ctx1) {$ctx1.fill(self,"renderItemLabel:on:",{aMethod:aMethod,html:html})});
  550. //>>excludeEnd("ctx");
  551. }; }),
  552. $globals.HLReferencesListWidget);
  553. $core.addMethod(
  554. $core.method({
  555. selector: "reselectItem:",
  556. protocol: "actions",
  557. //>>excludeStart("ide", pragmas.excludeIdeData);
  558. args: ["aMethod"],
  559. source: "reselectItem: aMethod\x0a\x09self selectItem: aMethod",
  560. referencedClasses: [],
  561. //>>excludeEnd("ide");
  562. pragmas: [],
  563. messageSends: ["selectItem:"]
  564. }, function ($methodClass){ return function (aMethod){
  565. var self=this,$self=this;
  566. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  567. return $core.withContext(function($ctx1) {
  568. //>>excludeEnd("ctx");
  569. $self._selectItem_(aMethod);
  570. return self;
  571. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  572. }, function($ctx1) {$ctx1.fill(self,"reselectItem:",{aMethod:aMethod})});
  573. //>>excludeEnd("ctx");
  574. }; }),
  575. $globals.HLReferencesListWidget);
  576. $core.addMethod(
  577. $core.method({
  578. selector: "selectItem:",
  579. protocol: "actions",
  580. //>>excludeStart("ide", pragmas.excludeIdeData);
  581. args: ["aMethod"],
  582. source: "selectItem: aMethod\x0a\x09super selectItem: aMethod.\x0a\x09self model selectedClass: nil; selectedMethod: aMethod",
  583. referencedClasses: [],
  584. //>>excludeEnd("ide");
  585. pragmas: [],
  586. messageSends: ["selectItem:", "selectedClass:", "model", "selectedMethod:"]
  587. }, function ($methodClass){ return function (aMethod){
  588. var self=this,$self=this;
  589. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  590. return $core.withContext(function($ctx1) {
  591. //>>excludeEnd("ctx");
  592. var $1;
  593. [(
  594. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  595. $ctx1.supercall = true,
  596. //>>excludeEnd("ctx");
  597. ($methodClass.superclass||$boot.nilAsClass).fn.prototype._selectItem_.call($self,aMethod))
  598. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  599. ,$ctx1.supercall = false
  600. //>>excludeEnd("ctx");
  601. ][0];
  602. $1=$self._model();
  603. $recv($1)._selectedClass_(nil);
  604. $recv($1)._selectedMethod_(aMethod);
  605. return self;
  606. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  607. }, function($ctx1) {$ctx1.fill(self,"selectItem:",{aMethod:aMethod})});
  608. //>>excludeEnd("ctx");
  609. }; }),
  610. $globals.HLReferencesListWidget);
  611. $core.addMethod(
  612. $core.method({
  613. selector: "on:",
  614. protocol: "instance creation",
  615. //>>excludeStart("ide", pragmas.excludeIdeData);
  616. args: ["aModel"],
  617. source: "on: aModel\x0a\x09^ self new \x0a\x09\x09model: aModel; \x0a\x09\x09yourself",
  618. referencedClasses: [],
  619. //>>excludeEnd("ide");
  620. pragmas: [],
  621. messageSends: ["model:", "new", "yourself"]
  622. }, function ($methodClass){ return function (aModel){
  623. var self=this,$self=this;
  624. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  625. return $core.withContext(function($ctx1) {
  626. //>>excludeEnd("ctx");
  627. var $1;
  628. $1=$self._new();
  629. $recv($1)._model_(aModel);
  630. return $recv($1)._yourself();
  631. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  632. }, function($ctx1) {$ctx1.fill(self,"on:",{aModel:aModel})});
  633. //>>excludeEnd("ctx");
  634. }; }),
  635. $globals.HLReferencesListWidget.a$cls);
  636. $core.addClass("HLClassReferencesListWidget", $globals.HLReferencesListWidget, "Helios-References");
  637. $core.addMethod(
  638. $core.method({
  639. selector: "label",
  640. protocol: "accessing",
  641. //>>excludeStart("ide", pragmas.excludeIdeData);
  642. args: [],
  643. source: "label\x0a\x09^ 'Class references'",
  644. referencedClasses: [],
  645. //>>excludeEnd("ide");
  646. pragmas: [],
  647. messageSends: []
  648. }, function ($methodClass){ return function (){
  649. var self=this,$self=this;
  650. return "Class references";
  651. }; }),
  652. $globals.HLClassReferencesListWidget);
  653. $core.addMethod(
  654. $core.method({
  655. selector: "onSearchReferences:",
  656. protocol: "reactions",
  657. //>>excludeStart("ide", pragmas.excludeIdeData);
  658. args: ["aString"],
  659. source: "onSearchReferences: aString\x0a\x09self selectItem: nil.\x0a\x09self items: (self model classReferencesOf: aString).\x0a\x09self refresh",
  660. referencedClasses: [],
  661. //>>excludeEnd("ide");
  662. pragmas: [],
  663. messageSends: ["selectItem:", "items:", "classReferencesOf:", "model", "refresh"]
  664. }, function ($methodClass){ return function (aString){
  665. var self=this,$self=this;
  666. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  667. return $core.withContext(function($ctx1) {
  668. //>>excludeEnd("ctx");
  669. $self._selectItem_(nil);
  670. $self._items_($recv($self._model())._classReferencesOf_(aString));
  671. $self._refresh();
  672. return self;
  673. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  674. }, function($ctx1) {$ctx1.fill(self,"onSearchReferences:",{aString:aString})});
  675. //>>excludeEnd("ctx");
  676. }; }),
  677. $globals.HLClassReferencesListWidget);
  678. $core.addClass("HLImplementorsListWidget", $globals.HLReferencesListWidget, "Helios-References");
  679. $core.addMethod(
  680. $core.method({
  681. selector: "label",
  682. protocol: "accessing",
  683. //>>excludeStart("ide", pragmas.excludeIdeData);
  684. args: [],
  685. source: "label\x0a\x09^ 'Implementors'",
  686. referencedClasses: [],
  687. //>>excludeEnd("ide");
  688. pragmas: [],
  689. messageSends: []
  690. }, function ($methodClass){ return function (){
  691. var self=this,$self=this;
  692. return "Implementors";
  693. }; }),
  694. $globals.HLImplementorsListWidget);
  695. $core.addMethod(
  696. $core.method({
  697. selector: "onSearchReferences:",
  698. protocol: "reactions",
  699. //>>excludeStart("ide", pragmas.excludeIdeData);
  700. args: ["aString"],
  701. source: "onSearchReferences: aString\x0a\x09self selectItem: nil.\x0a\x09self items: (self model implementorsOf: aString).\x0a\x09self refresh",
  702. referencedClasses: [],
  703. //>>excludeEnd("ide");
  704. pragmas: [],
  705. messageSends: ["selectItem:", "items:", "implementorsOf:", "model", "refresh"]
  706. }, function ($methodClass){ return function (aString){
  707. var self=this,$self=this;
  708. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  709. return $core.withContext(function($ctx1) {
  710. //>>excludeEnd("ctx");
  711. $self._selectItem_(nil);
  712. $self._items_($recv($self._model())._implementorsOf_(aString));
  713. $self._refresh();
  714. return self;
  715. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  716. }, function($ctx1) {$ctx1.fill(self,"onSearchReferences:",{aString:aString})});
  717. //>>excludeEnd("ctx");
  718. }; }),
  719. $globals.HLImplementorsListWidget);
  720. $core.addClass("HLRegexpListWidget", $globals.HLReferencesListWidget, "Helios-References");
  721. $core.addMethod(
  722. $core.method({
  723. selector: "label",
  724. protocol: "accessing",
  725. //>>excludeStart("ide", pragmas.excludeIdeData);
  726. args: [],
  727. source: "label\x0a\x09^ 'Source search'",
  728. referencedClasses: [],
  729. //>>excludeEnd("ide");
  730. pragmas: [],
  731. messageSends: []
  732. }, function ($methodClass){ return function (){
  733. var self=this,$self=this;
  734. return "Source search";
  735. }; }),
  736. $globals.HLRegexpListWidget);
  737. $core.addMethod(
  738. $core.method({
  739. selector: "onSearchReferences:",
  740. protocol: "reactions",
  741. //>>excludeStart("ide", pragmas.excludeIdeData);
  742. args: ["aString"],
  743. source: "onSearchReferences: aString\x0a\x09self selectItem: nil.\x0a\x09self items: (self model regexpReferencesOf: aString).\x0a\x09self refresh",
  744. referencedClasses: [],
  745. //>>excludeEnd("ide");
  746. pragmas: [],
  747. messageSends: ["selectItem:", "items:", "regexpReferencesOf:", "model", "refresh"]
  748. }, function ($methodClass){ return function (aString){
  749. var self=this,$self=this;
  750. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  751. return $core.withContext(function($ctx1) {
  752. //>>excludeEnd("ctx");
  753. $self._selectItem_(nil);
  754. $self._items_($recv($self._model())._regexpReferencesOf_(aString));
  755. $self._refresh();
  756. return self;
  757. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  758. }, function($ctx1) {$ctx1.fill(self,"onSearchReferences:",{aString:aString})});
  759. //>>excludeEnd("ctx");
  760. }; }),
  761. $globals.HLRegexpListWidget);
  762. $core.addClass("HLSendersListWidget", $globals.HLReferencesListWidget, "Helios-References");
  763. $core.addMethod(
  764. $core.method({
  765. selector: "label",
  766. protocol: "accessing",
  767. //>>excludeStart("ide", pragmas.excludeIdeData);
  768. args: [],
  769. source: "label\x0a\x09^ 'Senders'",
  770. referencedClasses: [],
  771. //>>excludeEnd("ide");
  772. pragmas: [],
  773. messageSends: []
  774. }, function ($methodClass){ return function (){
  775. var self=this,$self=this;
  776. return "Senders";
  777. }; }),
  778. $globals.HLSendersListWidget);
  779. $core.addMethod(
  780. $core.method({
  781. selector: "onSearchReferences:",
  782. protocol: "reactions",
  783. //>>excludeStart("ide", pragmas.excludeIdeData);
  784. args: ["aString"],
  785. source: "onSearchReferences: aString\x0a\x09self selectItem: nil.\x0a\x09self items: (self model sendersOf: aString).\x0a\x09self refresh",
  786. referencedClasses: [],
  787. //>>excludeEnd("ide");
  788. pragmas: [],
  789. messageSends: ["selectItem:", "items:", "sendersOf:", "model", "refresh"]
  790. }, function ($methodClass){ return function (aString){
  791. var self=this,$self=this;
  792. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  793. return $core.withContext(function($ctx1) {
  794. //>>excludeEnd("ctx");
  795. $self._selectItem_(nil);
  796. $self._items_($recv($self._model())._sendersOf_(aString));
  797. $self._refresh();
  798. return self;
  799. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  800. }, function($ctx1) {$ctx1.fill(self,"onSearchReferences:",{aString:aString})});
  801. //>>excludeEnd("ctx");
  802. }; }),
  803. $globals.HLSendersListWidget);
  804. $core.addClass("HLReferencesModel", $globals.HLToolModel, "Helios-References");
  805. $core.setSlots($globals.HLReferencesModel, ["methodsCache", "classesAndMetaclassesCache"]);
  806. $core.addMethod(
  807. $core.method({
  808. selector: "allMethods",
  809. protocol: "accessing",
  810. //>>excludeStart("ide", pragmas.excludeIdeData);
  811. args: [],
  812. source: "allMethods\x0a\x09^ self methodsCache",
  813. referencedClasses: [],
  814. //>>excludeEnd("ide");
  815. pragmas: [],
  816. messageSends: ["methodsCache"]
  817. }, function ($methodClass){ return function (){
  818. var self=this,$self=this;
  819. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  820. return $core.withContext(function($ctx1) {
  821. //>>excludeEnd("ctx");
  822. return $self._methodsCache();
  823. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  824. }, function($ctx1) {$ctx1.fill(self,"allMethods",{})});
  825. //>>excludeEnd("ctx");
  826. }; }),
  827. $globals.HLReferencesModel);
  828. $core.addMethod(
  829. $core.method({
  830. selector: "classReferencesOf:",
  831. protocol: "accessing",
  832. //>>excludeStart("ide", pragmas.excludeIdeData);
  833. args: ["aString"],
  834. source: "classReferencesOf: aString\x0a\x09\x22Answer all methods referencing the class named aString\x22\x0a\x09\x0a\x09^self allMethods select: [ :each |\x0a\x09\x09\x09(each referencedClasses includes: aString) ]",
  835. referencedClasses: [],
  836. //>>excludeEnd("ide");
  837. pragmas: [],
  838. messageSends: ["select:", "allMethods", "includes:", "referencedClasses"]
  839. }, function ($methodClass){ return function (aString){
  840. var self=this,$self=this;
  841. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  842. return $core.withContext(function($ctx1) {
  843. //>>excludeEnd("ctx");
  844. return $recv($self._allMethods())._select_((function(each){
  845. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  846. return $core.withContext(function($ctx2) {
  847. //>>excludeEnd("ctx");
  848. return $recv($recv(each)._referencedClasses())._includes_(aString);
  849. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  850. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,1)});
  851. //>>excludeEnd("ctx");
  852. }));
  853. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  854. }, function($ctx1) {$ctx1.fill(self,"classReferencesOf:",{aString:aString})});
  855. //>>excludeEnd("ctx");
  856. }; }),
  857. $globals.HLReferencesModel);
  858. $core.addMethod(
  859. $core.method({
  860. selector: "classesAndMetaclasses",
  861. protocol: "accessing",
  862. //>>excludeStart("ide", pragmas.excludeIdeData);
  863. args: [],
  864. source: "classesAndMetaclasses\x0a\x09^ self classesAndMetaclassesCache",
  865. referencedClasses: [],
  866. //>>excludeEnd("ide");
  867. pragmas: [],
  868. messageSends: ["classesAndMetaclassesCache"]
  869. }, function ($methodClass){ return function (){
  870. var self=this,$self=this;
  871. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  872. return $core.withContext(function($ctx1) {
  873. //>>excludeEnd("ctx");
  874. return $self._classesAndMetaclassesCache();
  875. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  876. }, function($ctx1) {$ctx1.fill(self,"classesAndMetaclasses",{})});
  877. //>>excludeEnd("ctx");
  878. }; }),
  879. $globals.HLReferencesModel);
  880. $core.addMethod(
  881. $core.method({
  882. selector: "classesAndMetaclassesCache",
  883. protocol: "cache",
  884. //>>excludeStart("ide", pragmas.excludeIdeData);
  885. args: [],
  886. source: "classesAndMetaclassesCache\x0a\x09classesAndMetaclassesCache ifNil: [ self updateClassesAndMetaclassesCache ].\x0a\x09^ classesAndMetaclassesCache",
  887. referencedClasses: [],
  888. //>>excludeEnd("ide");
  889. pragmas: [],
  890. messageSends: ["ifNil:", "updateClassesAndMetaclassesCache"]
  891. }, function ($methodClass){ return function (){
  892. var self=this,$self=this;
  893. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  894. return $core.withContext(function($ctx1) {
  895. //>>excludeEnd("ctx");
  896. var $1;
  897. $1=$self.classesAndMetaclassesCache;
  898. if($1 == null || $1.a$nil){
  899. $self._updateClassesAndMetaclassesCache();
  900. } else {
  901. $1;
  902. }
  903. return $self.classesAndMetaclassesCache;
  904. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  905. }, function($ctx1) {$ctx1.fill(self,"classesAndMetaclassesCache",{})});
  906. //>>excludeEnd("ctx");
  907. }; }),
  908. $globals.HLReferencesModel);
  909. $core.addMethod(
  910. $core.method({
  911. selector: "implementorsOf:",
  912. protocol: "accessing",
  913. //>>excludeStart("ide", pragmas.excludeIdeData);
  914. args: ["aString"],
  915. source: "implementorsOf: aString\x0a\x09^ self allMethods select: [ :each |\x0a\x09\x09each selector = aString ]",
  916. referencedClasses: [],
  917. //>>excludeEnd("ide");
  918. pragmas: [],
  919. messageSends: ["select:", "allMethods", "=", "selector"]
  920. }, function ($methodClass){ return function (aString){
  921. var self=this,$self=this;
  922. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  923. return $core.withContext(function($ctx1) {
  924. //>>excludeEnd("ctx");
  925. return $recv($self._allMethods())._select_((function(each){
  926. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  927. return $core.withContext(function($ctx2) {
  928. //>>excludeEnd("ctx");
  929. return $recv($recv(each)._selector()).__eq(aString);
  930. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  931. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,1)});
  932. //>>excludeEnd("ctx");
  933. }));
  934. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  935. }, function($ctx1) {$ctx1.fill(self,"implementorsOf:",{aString:aString})});
  936. //>>excludeEnd("ctx");
  937. }; }),
  938. $globals.HLReferencesModel);
  939. $core.addMethod(
  940. $core.method({
  941. selector: "isReferencesModel",
  942. protocol: "testing",
  943. //>>excludeStart("ide", pragmas.excludeIdeData);
  944. args: [],
  945. source: "isReferencesModel\x0a\x09^ true",
  946. referencedClasses: [],
  947. //>>excludeEnd("ide");
  948. pragmas: [],
  949. messageSends: []
  950. }, function ($methodClass){ return function (){
  951. var self=this,$self=this;
  952. return true;
  953. }; }),
  954. $globals.HLReferencesModel);
  955. $core.addMethod(
  956. $core.method({
  957. selector: "methodsCache",
  958. protocol: "cache",
  959. //>>excludeStart("ide", pragmas.excludeIdeData);
  960. args: [],
  961. source: "methodsCache\x0a\x09methodsCache ifNil: [ self updateMethodsCache ].\x0a\x09^ methodsCache",
  962. referencedClasses: [],
  963. //>>excludeEnd("ide");
  964. pragmas: [],
  965. messageSends: ["ifNil:", "updateMethodsCache"]
  966. }, function ($methodClass){ return function (){
  967. var self=this,$self=this;
  968. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  969. return $core.withContext(function($ctx1) {
  970. //>>excludeEnd("ctx");
  971. var $1;
  972. $1=$self.methodsCache;
  973. if($1 == null || $1.a$nil){
  974. $self._updateMethodsCache();
  975. } else {
  976. $1;
  977. }
  978. return $self.methodsCache;
  979. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  980. }, function($ctx1) {$ctx1.fill(self,"methodsCache",{})});
  981. //>>excludeEnd("ctx");
  982. }; }),
  983. $globals.HLReferencesModel);
  984. $core.addMethod(
  985. $core.method({
  986. selector: "openClassNamed:",
  987. protocol: "actions",
  988. //>>excludeStart("ide", pragmas.excludeIdeData);
  989. args: ["aString"],
  990. source: "openClassNamed: aString\x0a\x09| browser |\x0a\x09\x0a\x09self withChangesDo: [\x0a\x09\x09browser := HLBrowser openAsTab.\x0a\x09\x09browser openClassNamed: aString ]",
  991. referencedClasses: ["HLBrowser"],
  992. //>>excludeEnd("ide");
  993. pragmas: [],
  994. messageSends: ["withChangesDo:", "openAsTab", "openClassNamed:"]
  995. }, function ($methodClass){ return function (aString){
  996. var self=this,$self=this;
  997. var browser;
  998. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  999. return $core.withContext(function($ctx1) {
  1000. //>>excludeEnd("ctx");
  1001. $self._withChangesDo_((function(){
  1002. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1003. return $core.withContext(function($ctx2) {
  1004. //>>excludeEnd("ctx");
  1005. browser=$recv($globals.HLBrowser)._openAsTab();
  1006. return $recv(browser)._openClassNamed_(aString);
  1007. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1008. }, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)});
  1009. //>>excludeEnd("ctx");
  1010. }));
  1011. return self;
  1012. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1013. }, function($ctx1) {$ctx1.fill(self,"openClassNamed:",{aString:aString,browser:browser})});
  1014. //>>excludeEnd("ctx");
  1015. }; }),
  1016. $globals.HLReferencesModel);
  1017. $core.addMethod(
  1018. $core.method({
  1019. selector: "openMethod",
  1020. protocol: "actions",
  1021. //>>excludeStart("ide", pragmas.excludeIdeData);
  1022. args: [],
  1023. source: "openMethod\x0a\x09| browser |\x0a\x09\x0a\x09self selectedMethod ifNil: [ ^ self ].\x0a\x09\x0a\x09self withChangesDo: [\x0a\x09\x09browser := HLBrowser openAsTab.\x0a\x09\x09browser openMethod: self selectedMethod ]",
  1024. referencedClasses: ["HLBrowser"],
  1025. //>>excludeEnd("ide");
  1026. pragmas: [],
  1027. messageSends: ["ifNil:", "selectedMethod", "withChangesDo:", "openAsTab", "openMethod:"]
  1028. }, function ($methodClass){ return function (){
  1029. var self=this,$self=this;
  1030. var browser;
  1031. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1032. return $core.withContext(function($ctx1) {
  1033. //>>excludeEnd("ctx");
  1034. var $1;
  1035. $1=[$self._selectedMethod()
  1036. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1037. ,$ctx1.sendIdx["selectedMethod"]=1
  1038. //>>excludeEnd("ctx");
  1039. ][0];
  1040. if($1 == null || $1.a$nil){
  1041. return self;
  1042. } else {
  1043. $1;
  1044. }
  1045. $self._withChangesDo_((function(){
  1046. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1047. return $core.withContext(function($ctx2) {
  1048. //>>excludeEnd("ctx");
  1049. browser=$recv($globals.HLBrowser)._openAsTab();
  1050. return $recv(browser)._openMethod_($self._selectedMethod());
  1051. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1052. }, function($ctx2) {$ctx2.fillBlock({},$ctx1,2)});
  1053. //>>excludeEnd("ctx");
  1054. }));
  1055. return self;
  1056. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1057. }, function($ctx1) {$ctx1.fill(self,"openMethod",{browser:browser})});
  1058. //>>excludeEnd("ctx");
  1059. }; }),
  1060. $globals.HLReferencesModel);
  1061. $core.addMethod(
  1062. $core.method({
  1063. selector: "regexpReferencesOf:",
  1064. protocol: "accessing",
  1065. //>>excludeStart("ide", pragmas.excludeIdeData);
  1066. args: ["aString"],
  1067. source: "regexpReferencesOf: aString\x0a\x09^ self allMethods select: [ :each |\x0a\x09\x09each source match: aString ]",
  1068. referencedClasses: [],
  1069. //>>excludeEnd("ide");
  1070. pragmas: [],
  1071. messageSends: ["select:", "allMethods", "match:", "source"]
  1072. }, function ($methodClass){ return function (aString){
  1073. var self=this,$self=this;
  1074. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1075. return $core.withContext(function($ctx1) {
  1076. //>>excludeEnd("ctx");
  1077. return $recv($self._allMethods())._select_((function(each){
  1078. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1079. return $core.withContext(function($ctx2) {
  1080. //>>excludeEnd("ctx");
  1081. return $recv($recv(each)._source())._match_(aString);
  1082. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1083. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,1)});
  1084. //>>excludeEnd("ctx");
  1085. }));
  1086. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1087. }, function($ctx1) {$ctx1.fill(self,"regexpReferencesOf:",{aString:aString})});
  1088. //>>excludeEnd("ctx");
  1089. }; }),
  1090. $globals.HLReferencesModel);
  1091. $core.addMethod(
  1092. $core.method({
  1093. selector: "search:",
  1094. protocol: "actions",
  1095. //>>excludeStart("ide", pragmas.excludeIdeData);
  1096. args: ["aString"],
  1097. source: "search: aString\x0a\x09self updateCaches.\x0a\x09\x0a\x09self announcer announce: (HLSearchReferences new\x0a\x09\x09searchString: aString;\x0a\x09\x09yourself)",
  1098. referencedClasses: ["HLSearchReferences"],
  1099. //>>excludeEnd("ide");
  1100. pragmas: [],
  1101. messageSends: ["updateCaches", "announce:", "announcer", "searchString:", "new", "yourself"]
  1102. }, function ($methodClass){ return function (aString){
  1103. var self=this,$self=this;
  1104. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1105. return $core.withContext(function($ctx1) {
  1106. //>>excludeEnd("ctx");
  1107. var $1,$2;
  1108. $self._updateCaches();
  1109. $1=$self._announcer();
  1110. $2=$recv($globals.HLSearchReferences)._new();
  1111. $recv($2)._searchString_(aString);
  1112. $recv($1)._announce_($recv($2)._yourself());
  1113. return self;
  1114. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1115. }, function($ctx1) {$ctx1.fill(self,"search:",{aString:aString})});
  1116. //>>excludeEnd("ctx");
  1117. }; }),
  1118. $globals.HLReferencesModel);
  1119. $core.addMethod(
  1120. $core.method({
  1121. selector: "sendersOf:",
  1122. protocol: "accessing",
  1123. //>>excludeStart("ide", pragmas.excludeIdeData);
  1124. args: ["aString"],
  1125. source: "sendersOf: aString\x0a\x09^ self allMethods select: [ :each |\x0a\x09\x09each messageSends includes: aString ]",
  1126. referencedClasses: [],
  1127. //>>excludeEnd("ide");
  1128. pragmas: [],
  1129. messageSends: ["select:", "allMethods", "includes:", "messageSends"]
  1130. }, function ($methodClass){ return function (aString){
  1131. var self=this,$self=this;
  1132. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1133. return $core.withContext(function($ctx1) {
  1134. //>>excludeEnd("ctx");
  1135. return $recv($self._allMethods())._select_((function(each){
  1136. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1137. return $core.withContext(function($ctx2) {
  1138. //>>excludeEnd("ctx");
  1139. return $recv($recv(each)._messageSends())._includes_(aString);
  1140. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1141. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,1)});
  1142. //>>excludeEnd("ctx");
  1143. }));
  1144. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1145. }, function($ctx1) {$ctx1.fill(self,"sendersOf:",{aString:aString})});
  1146. //>>excludeEnd("ctx");
  1147. }; }),
  1148. $globals.HLReferencesModel);
  1149. $core.addMethod(
  1150. $core.method({
  1151. selector: "updateCaches",
  1152. protocol: "cache",
  1153. //>>excludeStart("ide", pragmas.excludeIdeData);
  1154. args: [],
  1155. source: "updateCaches\x0a\x09self \x0a\x09\x09updateClassesAndMetaclassesCache;\x0a\x09\x09updateMethodsCache",
  1156. referencedClasses: [],
  1157. //>>excludeEnd("ide");
  1158. pragmas: [],
  1159. messageSends: ["updateClassesAndMetaclassesCache", "updateMethodsCache"]
  1160. }, function ($methodClass){ return function (){
  1161. var self=this,$self=this;
  1162. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1163. return $core.withContext(function($ctx1) {
  1164. //>>excludeEnd("ctx");
  1165. $self._updateClassesAndMetaclassesCache();
  1166. $self._updateMethodsCache();
  1167. return self;
  1168. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1169. }, function($ctx1) {$ctx1.fill(self,"updateCaches",{})});
  1170. //>>excludeEnd("ctx");
  1171. }; }),
  1172. $globals.HLReferencesModel);
  1173. $core.addMethod(
  1174. $core.method({
  1175. selector: "updateClassesAndMetaclassesCache",
  1176. protocol: "cache",
  1177. //>>excludeStart("ide", pragmas.excludeIdeData);
  1178. args: [],
  1179. source: "updateClassesAndMetaclassesCache\x0a\x09classesAndMetaclassesCache := OrderedCollection new.\x0a\x09\x0a\x09self environment classes do: [ :eachClass | eachClass includingPossibleMetaDo: [ :each |\x0a\x09\x09classesAndMetaclassesCache add: each ] ]",
  1180. referencedClasses: ["OrderedCollection"],
  1181. //>>excludeEnd("ide");
  1182. pragmas: [],
  1183. messageSends: ["new", "do:", "classes", "environment", "includingPossibleMetaDo:", "add:"]
  1184. }, function ($methodClass){ return function (){
  1185. var self=this,$self=this;
  1186. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1187. return $core.withContext(function($ctx1) {
  1188. //>>excludeEnd("ctx");
  1189. $self.classesAndMetaclassesCache=$recv($globals.OrderedCollection)._new();
  1190. $recv($recv($self._environment())._classes())._do_((function(eachClass){
  1191. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1192. return $core.withContext(function($ctx2) {
  1193. //>>excludeEnd("ctx");
  1194. return $recv(eachClass)._includingPossibleMetaDo_((function(each){
  1195. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1196. return $core.withContext(function($ctx3) {
  1197. //>>excludeEnd("ctx");
  1198. return $recv($self.classesAndMetaclassesCache)._add_(each);
  1199. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1200. }, function($ctx3) {$ctx3.fillBlock({each:each},$ctx2,2)});
  1201. //>>excludeEnd("ctx");
  1202. }));
  1203. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1204. }, function($ctx2) {$ctx2.fillBlock({eachClass:eachClass},$ctx1,1)});
  1205. //>>excludeEnd("ctx");
  1206. }));
  1207. return self;
  1208. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1209. }, function($ctx1) {$ctx1.fill(self,"updateClassesAndMetaclassesCache",{})});
  1210. //>>excludeEnd("ctx");
  1211. }; }),
  1212. $globals.HLReferencesModel);
  1213. $core.addMethod(
  1214. $core.method({
  1215. selector: "updateMethodsCache",
  1216. protocol: "cache",
  1217. //>>excludeStart("ide", pragmas.excludeIdeData);
  1218. args: [],
  1219. source: "updateMethodsCache\x0a\x09methodsCache := OrderedCollection new.\x0a\x09\x0a\x09self classesAndMetaclasses\x0a\x09\x09do: [ :each | methodsCache addAll: each methods ]",
  1220. referencedClasses: ["OrderedCollection"],
  1221. //>>excludeEnd("ide");
  1222. pragmas: [],
  1223. messageSends: ["new", "do:", "classesAndMetaclasses", "addAll:", "methods"]
  1224. }, function ($methodClass){ return function (){
  1225. var self=this,$self=this;
  1226. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1227. return $core.withContext(function($ctx1) {
  1228. //>>excludeEnd("ctx");
  1229. $self.methodsCache=$recv($globals.OrderedCollection)._new();
  1230. $recv($self._classesAndMetaclasses())._do_((function(each){
  1231. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1232. return $core.withContext(function($ctx2) {
  1233. //>>excludeEnd("ctx");
  1234. return $recv($self.methodsCache)._addAll_($recv(each)._methods());
  1235. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1236. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,1)});
  1237. //>>excludeEnd("ctx");
  1238. }));
  1239. return self;
  1240. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1241. }, function($ctx1) {$ctx1.fill(self,"updateMethodsCache",{})});
  1242. //>>excludeEnd("ctx");
  1243. }; }),
  1244. $globals.HLReferencesModel);
  1245. });