1
0

Helios-Browser.deploy.js 114 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076
  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. return smalltalk.withContext(function($ctx1) { var $1;
  10. $1=_st(_st(self)._model())._announcer();
  11. return $1;
  12. }, function($ctx1) {$ctx1.fill(self,"announcer",{}, smalltalk.HLBrowser)})},
  13. messageSends: ["announcer", "model"]}),
  14. smalltalk.HLBrowser);
  15. smalltalk.addMethod(
  16. "_canHaveFocus",
  17. smalltalk.method({
  18. selector: "canHaveFocus",
  19. fn: function (){
  20. var self=this;
  21. return smalltalk.withContext(function($ctx1) { return true;
  22. }, function($ctx1) {$ctx1.fill(self,"canHaveFocus",{},smalltalk.HLBrowser)})},
  23. messageSends: []}),
  24. smalltalk.HLBrowser);
  25. smalltalk.addMethod(
  26. "_classesListWidget",
  27. smalltalk.method({
  28. selector: "classesListWidget",
  29. fn: function (){
  30. var self=this;
  31. return smalltalk.withContext(function($ctx1) { var $2,$1;
  32. $2=self["@classesListWidget"];
  33. if(($receiver = $2) == nil || $receiver == undefined){
  34. self["@classesListWidget"]=_st((smalltalk.HLClassesListWidget || HLClassesListWidget))._on_(_st(self)._model());
  35. self["@classesListWidget"];
  36. $1=_st(self["@classesListWidget"])._next_(_st(self)._protocolsListWidget());
  37. } else {
  38. $1=$2;
  39. };
  40. return $1;
  41. }, function($ctx1) {$ctx1.fill(self,"classesListWidget",{}, smalltalk.HLBrowser)})},
  42. messageSends: ["ifNil:", "on:", "model", "next:", "protocolsListWidget"]}),
  43. smalltalk.HLBrowser);
  44. smalltalk.addMethod(
  45. "_environment",
  46. smalltalk.method({
  47. selector: "environment",
  48. fn: function (){
  49. var self=this;
  50. return smalltalk.withContext(function($ctx1) { var $1;
  51. $1=_st(_st(self)._model())._environment();
  52. return $1;
  53. }, function($ctx1) {$ctx1.fill(self,"environment",{}, smalltalk.HLBrowser)})},
  54. messageSends: ["environment", "model"]}),
  55. smalltalk.HLBrowser);
  56. smalltalk.addMethod(
  57. "_focus",
  58. smalltalk.method({
  59. selector: "focus",
  60. fn: function (){
  61. var self=this;
  62. return smalltalk.withContext(function($ctx1) { var $1;
  63. $1=_st(_st(self)._packagesListWidget())._focus();
  64. return $1;
  65. }, function($ctx1) {$ctx1.fill(self,"focus",{},smalltalk.HLBrowser)})},
  66. messageSends: ["focus", "packagesListWidget"]}),
  67. smalltalk.HLBrowser);
  68. smalltalk.addMethod(
  69. "_methodsListWidget",
  70. smalltalk.method({
  71. selector: "methodsListWidget",
  72. fn: function (){
  73. var self=this;
  74. return smalltalk.withContext(function($ctx1) { var $2,$1;
  75. $2=self["@methodsListWidget"];
  76. if(($receiver = $2) == nil || $receiver == undefined){
  77. self["@methodsListWidget"]=_st((smalltalk.HLMethodsListWidget || HLMethodsListWidget))._on_(_st(self)._model());
  78. $1=self["@methodsListWidget"];
  79. } else {
  80. $1=$2;
  81. };
  82. return $1;
  83. }, function($ctx1) {$ctx1.fill(self,"methodsListWidget",{}, smalltalk.HLBrowser)})},
  84. messageSends: ["ifNil:", "on:", "model"]}),
  85. smalltalk.HLBrowser);
  86. smalltalk.addMethod(
  87. "_model",
  88. smalltalk.method({
  89. selector: "model",
  90. fn: function (){
  91. var self=this;
  92. return smalltalk.withContext(function($ctx1) { var $2,$1;
  93. $2=self["@model"];
  94. if(($receiver = $2) == nil || $receiver == undefined){
  95. self["@model"]=_st((smalltalk.HLBrowserModel || HLBrowserModel))._new();
  96. $1=self["@model"];
  97. } else {
  98. $1=$2;
  99. };
  100. return $1;
  101. }, function($ctx1) {$ctx1.fill(self,"model",{}, smalltalk.HLBrowser)})},
  102. messageSends: ["ifNil:", "new"]}),
  103. smalltalk.HLBrowser);
  104. smalltalk.addMethod(
  105. "_model_",
  106. smalltalk.method({
  107. selector: "model:",
  108. fn: function (aModel){
  109. var self=this;
  110. return smalltalk.withContext(function($ctx1) { self["@model"]=aModel;
  111. return self}, function($ctx1) {$ctx1.fill(self,"model:",{aModel:aModel}, smalltalk.HLBrowser)})},
  112. messageSends: []}),
  113. smalltalk.HLBrowser);
  114. smalltalk.addMethod(
  115. "_packagesListWidget",
  116. smalltalk.method({
  117. selector: "packagesListWidget",
  118. fn: function (){
  119. var self=this;
  120. return smalltalk.withContext(function($ctx1) { var $2,$1;
  121. $2=self["@packagesListWidget"];
  122. if(($receiver = $2) == nil || $receiver == undefined){
  123. self["@packagesListWidget"]=_st((smalltalk.HLPackagesListWidget || HLPackagesListWidget))._on_(_st(self)._model());
  124. self["@packagesListWidget"];
  125. $1=_st(self["@packagesListWidget"])._next_(_st(self)._classesListWidget());
  126. } else {
  127. $1=$2;
  128. };
  129. return $1;
  130. }, function($ctx1) {$ctx1.fill(self,"packagesListWidget",{}, smalltalk.HLBrowser)})},
  131. messageSends: ["ifNil:", "on:", "model", "next:", "classesListWidget"]}),
  132. smalltalk.HLBrowser);
  133. smalltalk.addMethod(
  134. "_protocolsListWidget",
  135. smalltalk.method({
  136. selector: "protocolsListWidget",
  137. fn: function (){
  138. var self=this;
  139. return smalltalk.withContext(function($ctx1) { var $2,$1;
  140. $2=self["@protocolsListWidget"];
  141. if(($receiver = $2) == nil || $receiver == undefined){
  142. self["@protocolsListWidget"]=_st((smalltalk.HLProtocolsListWidget || HLProtocolsListWidget))._on_(_st(self)._model());
  143. self["@protocolsListWidget"];
  144. $1=_st(self["@protocolsListWidget"])._next_(_st(self)._methodsListWidget());
  145. } else {
  146. $1=$2;
  147. };
  148. return $1;
  149. }, function($ctx1) {$ctx1.fill(self,"protocolsListWidget",{}, smalltalk.HLBrowser)})},
  150. messageSends: ["ifNil:", "on:", "model", "next:", "methodsListWidget"]}),
  151. smalltalk.HLBrowser);
  152. smalltalk.addMethod(
  153. "_registerBindingsOn_",
  154. smalltalk.method({
  155. selector: "registerBindingsOn:",
  156. fn: function (aBindingGroup){
  157. var self=this;
  158. return smalltalk.withContext(function($ctx1) { _st((smalltalk.HLBrowserCommand || HLBrowserCommand))._registerConcreteClassesOn_for_(aBindingGroup,_st(self)._model());
  159. return self}, function($ctx1) {$ctx1.fill(self,"registerBindingsOn:",{aBindingGroup:aBindingGroup},smalltalk.HLBrowser)})},
  160. messageSends: ["registerConcreteClassesOn:for:", "model"]}),
  161. smalltalk.HLBrowser);
  162. smalltalk.addMethod(
  163. "_renderContentOn_",
  164. smalltalk.method({
  165. selector: "renderContentOn:",
  166. fn: function (html){
  167. var self=this;
  168. return smalltalk.withContext(function($ctx1) { _st(html)._with_(_st((smalltalk.HLContainer || HLContainer))._with_(_st((smalltalk.HLHorizontalSplitter || HLHorizontalSplitter))._with_with_(_st((smalltalk.HLVerticalSplitter || HLVerticalSplitter))._with_with_(_st((smalltalk.HLVerticalSplitter || HLVerticalSplitter))._with_with_(_st(self)._packagesListWidget(),_st(self)._classesListWidget()),_st((smalltalk.HLVerticalSplitter || HLVerticalSplitter))._with_with_(_st(self)._protocolsListWidget(),_st(self)._methodsListWidget())),_st(self)._sourceWidget())));
  169. _st(_st(self)._packagesListWidget())._focus();
  170. return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLBrowser)})},
  171. messageSends: ["with:", "with:with:", "packagesListWidget", "classesListWidget", "protocolsListWidget", "methodsListWidget", "sourceWidget", "focus"]}),
  172. smalltalk.HLBrowser);
  173. smalltalk.addMethod(
  174. "_sourceWidget",
  175. smalltalk.method({
  176. selector: "sourceWidget",
  177. fn: function (){
  178. var self=this;
  179. return smalltalk.withContext(function($ctx1) { var $2,$1;
  180. $2=self["@sourceWidget"];
  181. if(($receiver = $2) == nil || $receiver == undefined){
  182. self["@sourceWidget"]=_st((smalltalk.HLBrowserSourceWidget || HLBrowserSourceWidget))._on_(_st(self)._model());
  183. $1=self["@sourceWidget"];
  184. } else {
  185. $1=$2;
  186. };
  187. return $1;
  188. }, function($ctx1) {$ctx1.fill(self,"sourceWidget",{}, smalltalk.HLBrowser)})},
  189. messageSends: ["ifNil:", "on:", "model"]}),
  190. smalltalk.HLBrowser);
  191. smalltalk.HLBrowser.klass.iVarNames = ['nextId'];
  192. smalltalk.addMethod(
  193. "_canBeOpenAsTab",
  194. smalltalk.method({
  195. selector: "canBeOpenAsTab",
  196. fn: function (){
  197. var self=this;
  198. return smalltalk.withContext(function($ctx1) { return true;
  199. }, function($ctx1) {$ctx1.fill(self,"canBeOpenAsTab",{}, smalltalk.HLBrowser.klass)})},
  200. messageSends: []}),
  201. smalltalk.HLBrowser.klass);
  202. smalltalk.addMethod(
  203. "_nextId",
  204. smalltalk.method({
  205. selector: "nextId",
  206. fn: function (){
  207. var self=this;
  208. return smalltalk.withContext(function($ctx1) { var $1,$2;
  209. $1=self["@nextId"];
  210. if(($receiver = $1) == nil || $receiver == undefined){
  211. self["@nextId"]=(0);
  212. self["@nextId"];
  213. } else {
  214. $1;
  215. };
  216. $2=_st("browser_").__comma(_st(_st(self["@nextId"]).__plus((1)))._asString());
  217. return $2;
  218. }, function($ctx1) {$ctx1.fill(self,"nextId",{}, smalltalk.HLBrowser.klass)})},
  219. messageSends: ["ifNil:", ",", "asString", "+"]}),
  220. smalltalk.HLBrowser.klass);
  221. smalltalk.addMethod(
  222. "_tabLabel",
  223. smalltalk.method({
  224. selector: "tabLabel",
  225. fn: function (){
  226. var self=this;
  227. return smalltalk.withContext(function($ctx1) { return "Browser";
  228. }, function($ctx1) {$ctx1.fill(self,"tabLabel",{}, smalltalk.HLBrowser.klass)})},
  229. messageSends: []}),
  230. smalltalk.HLBrowser.klass);
  231. smalltalk.addMethod(
  232. "_tabPriority",
  233. smalltalk.method({
  234. selector: "tabPriority",
  235. fn: function (){
  236. var self=this;
  237. return smalltalk.withContext(function($ctx1) { return (0);
  238. }, function($ctx1) {$ctx1.fill(self,"tabPriority",{}, smalltalk.HLBrowser.klass)})},
  239. messageSends: []}),
  240. smalltalk.HLBrowser.klass);
  241. smalltalk.addClass('HLBrowserListWidget', smalltalk.HLNavigationListWidget, ['model'], 'Helios-Browser');
  242. smalltalk.addMethod(
  243. "_initialize",
  244. smalltalk.method({
  245. selector: "initialize",
  246. fn: function (){
  247. var self=this;
  248. return smalltalk.withContext(function($ctx1) { smalltalk.HLNavigationListWidget.fn.prototype._initialize.apply(_st(self), []);
  249. _st(self)._observeSystem();
  250. return self}, function($ctx1) {$ctx1.fill(self,"initialize",{}, smalltalk.HLBrowserListWidget)})},
  251. messageSends: ["initialize", "observeSystem"]}),
  252. smalltalk.HLBrowserListWidget);
  253. smalltalk.addMethod(
  254. "_model",
  255. smalltalk.method({
  256. selector: "model",
  257. fn: function (){
  258. var self=this;
  259. return smalltalk.withContext(function($ctx1) { var $1;
  260. $1=self["@model"];
  261. return $1;
  262. }, function($ctx1) {$ctx1.fill(self,"model",{}, smalltalk.HLBrowserListWidget)})},
  263. messageSends: []}),
  264. smalltalk.HLBrowserListWidget);
  265. smalltalk.addMethod(
  266. "_model_",
  267. smalltalk.method({
  268. selector: "model:",
  269. fn: function (aBrowserModel){
  270. var self=this;
  271. return smalltalk.withContext(function($ctx1) { self["@model"]=aBrowserModel;
  272. _st(self)._observeModel();
  273. return self}, function($ctx1) {$ctx1.fill(self,"model:",{aBrowserModel:aBrowserModel}, smalltalk.HLBrowserListWidget)})},
  274. messageSends: ["observeModel"]}),
  275. smalltalk.HLBrowserListWidget);
  276. smalltalk.addMethod(
  277. "_observeModel",
  278. smalltalk.method({
  279. selector: "observeModel",
  280. fn: function (){
  281. var self=this;
  282. return smalltalk.withContext(function($ctx1) { return self}, function($ctx1) {$ctx1.fill(self,"observeModel",{}, smalltalk.HLBrowserListWidget)})},
  283. messageSends: []}),
  284. smalltalk.HLBrowserListWidget);
  285. smalltalk.addMethod(
  286. "_observeSystem",
  287. smalltalk.method({
  288. selector: "observeSystem",
  289. fn: function (){
  290. var self=this;
  291. return smalltalk.withContext(function($ctx1) { return self}, function($ctx1) {$ctx1.fill(self,"observeSystem",{}, smalltalk.HLBrowserListWidget)})},
  292. messageSends: []}),
  293. smalltalk.HLBrowserListWidget);
  294. smalltalk.addMethod(
  295. "_on_",
  296. smalltalk.method({
  297. selector: "on:",
  298. fn: function (aModel){
  299. var self=this;
  300. return smalltalk.withContext(function($ctx1) { var $2,$3,$1;
  301. $2=_st(self)._new();
  302. _st($2)._model_(aModel);
  303. $3=_st($2)._yourself();
  304. $1=$3;
  305. return $1;
  306. }, function($ctx1) {$ctx1.fill(self,"on:",{aModel:aModel}, smalltalk.HLBrowserListWidget.klass)})},
  307. messageSends: ["model:", "new", "yourself"]}),
  308. smalltalk.HLBrowserListWidget.klass);
  309. smalltalk.addClass('HLClassesListWidget', smalltalk.HLBrowserListWidget, [], 'Helios-Browser');
  310. smalltalk.addMethod(
  311. "_focusMethodsListWidget",
  312. smalltalk.method({
  313. selector: "focusMethodsListWidget",
  314. fn: function (){
  315. var self=this;
  316. return smalltalk.withContext(function($ctx1) { _st(_st(_st(self)._model())._announcer())._announce_(_st((smalltalk.HLMethodsListFocus || HLMethodsListFocus))._new());
  317. return self}, function($ctx1) {$ctx1.fill(self,"focusMethodsListWidget",{}, smalltalk.HLClassesListWidget)})},
  318. messageSends: ["announce:", "new", "announcer", "model"]}),
  319. smalltalk.HLClassesListWidget);
  320. smalltalk.addMethod(
  321. "_focusProtocolsListWidget",
  322. smalltalk.method({
  323. selector: "focusProtocolsListWidget",
  324. fn: function (){
  325. var self=this;
  326. return smalltalk.withContext(function($ctx1) { _st(_st(_st(self)._model())._announcer())._announce_(_st((smalltalk.HLProtocolsListFocus || HLProtocolsListFocus))._new());
  327. return self}, function($ctx1) {$ctx1.fill(self,"focusProtocolsListWidget",{}, smalltalk.HLClassesListWidget)})},
  328. messageSends: ["announce:", "new", "announcer", "model"]}),
  329. smalltalk.HLClassesListWidget);
  330. smalltalk.addMethod(
  331. "_getChildrenOf_",
  332. smalltalk.method({
  333. selector: "getChildrenOf:",
  334. fn: function (aClass){
  335. var self=this;
  336. return smalltalk.withContext(function($ctx1) { var $1;
  337. $1=_st(_st(self)._items())._select_((function(each){
  338. return smalltalk.withContext(function($ctx2) { return _st(_st(each)._superclass()).__eq(aClass);
  339. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
  340. return $1;
  341. }, function($ctx1) {$ctx1.fill(self,"getChildrenOf:",{aClass:aClass}, smalltalk.HLClassesListWidget)})},
  342. messageSends: ["select:", "=", "superclass", "items"]}),
  343. smalltalk.HLClassesListWidget);
  344. smalltalk.addMethod(
  345. "_getRootClassesOf_",
  346. smalltalk.method({
  347. selector: "getRootClassesOf:",
  348. fn: function (aCollection){
  349. var self=this;
  350. return smalltalk.withContext(function($ctx1) { var $1;
  351. $1=_st(aCollection)._select_((function(each){
  352. return smalltalk.withContext(function($ctx2) { return _st(_st(aCollection)._includes_(_st(each)._superclass()))._not();
  353. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
  354. return $1;
  355. }, function($ctx1) {$ctx1.fill(self,"getRootClassesOf:",{aCollection:aCollection}, smalltalk.HLClassesListWidget)})},
  356. messageSends: ["select:", "not", "includes:", "superclass"]}),
  357. smalltalk.HLClassesListWidget);
  358. smalltalk.addMethod(
  359. "_iconForItem_",
  360. smalltalk.method({
  361. selector: "iconForItem:",
  362. fn: function (aClass){
  363. var self=this;
  364. return smalltalk.withContext(function($ctx1) { var $2,$1;
  365. $2=_st(_st(_st(aClass)._theNonMetaClass())._comment())._isEmpty();
  366. if(smalltalk.assert($2)){
  367. $1="icon-question-sign";
  368. } else {
  369. $1="icon-none";
  370. };
  371. return $1;
  372. }, function($ctx1) {$ctx1.fill(self,"iconForItem:",{aClass:aClass}, smalltalk.HLClassesListWidget)})},
  373. messageSends: ["ifFalse:ifTrue:", "isEmpty", "comment", "theNonMetaClass"]}),
  374. smalltalk.HLClassesListWidget);
  375. smalltalk.addMethod(
  376. "_observeModel",
  377. smalltalk.method({
  378. selector: "observeModel",
  379. fn: function (){
  380. var self=this;
  381. return smalltalk.withContext(function($ctx1) { var $1,$2;
  382. $1=_st(_st(self)._model())._announcer();
  383. _st($1)._on_do_((smalltalk.HLPackageSelected || HLPackageSelected),(function(ann){
  384. return smalltalk.withContext(function($ctx2) { return _st(self)._onPackageSelected_(_st(ann)._item());
  385. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  386. _st($1)._on_do_((smalltalk.HLShowInstanceToggled || HLShowInstanceToggled),(function(ann){
  387. return smalltalk.withContext(function($ctx2) { return _st(self)._onShowInstanceToggled();
  388. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  389. _st($1)._on_do_((smalltalk.HLClassSelected || HLClassSelected),(function(ann){
  390. return smalltalk.withContext(function($ctx2) { return _st(self)._onClassSelected_(_st(ann)._item());
  391. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  392. $2=_st($1)._on_do_((smalltalk.HLClassesFocusRequested || HLClassesFocusRequested),(function(ann){
  393. return smalltalk.withContext(function($ctx2) { return _st(self)._onClassesFocusRequested();
  394. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  395. return self}, function($ctx1) {$ctx1.fill(self,"observeModel",{}, smalltalk.HLClassesListWidget)})},
  396. messageSends: ["on:do:", "onPackageSelected:", "item", "announcer", "model", "onShowInstanceToggled", "onClassSelected:", "onClassesFocusRequested"]}),
  397. smalltalk.HLClassesListWidget);
  398. smalltalk.addMethod(
  399. "_observeSystem",
  400. smalltalk.method({
  401. selector: "observeSystem",
  402. fn: function (){
  403. var self=this;
  404. return smalltalk.withContext(function($ctx1) { var $1,$2;
  405. $1=_st((smalltalk.SystemAnnouncer || SystemAnnouncer))._current();
  406. _st($1)._on_do_((smalltalk.ClassAdded || ClassAdded),(function(ann){
  407. return smalltalk.withContext(function($ctx2) { return _st(self)._onClassAdded_(_st(ann)._theClass());
  408. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  409. $2=_st($1)._on_do_((smalltalk.ClassRemoved || ClassRemoved),(function(ann){
  410. return smalltalk.withContext(function($ctx2) { return _st(self)._onClassRemoved_(_st(ann)._theClass());
  411. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  412. return self}, function($ctx1) {$ctx1.fill(self,"observeSystem",{}, smalltalk.HLClassesListWidget)})},
  413. messageSends: ["on:do:", "onClassAdded:", "theClass", "current", "onClassRemoved:"]}),
  414. smalltalk.HLClassesListWidget);
  415. smalltalk.addMethod(
  416. "_onClassAdded_",
  417. smalltalk.method({
  418. selector: "onClassAdded:",
  419. fn: function (aClass){
  420. var self=this;
  421. return smalltalk.withContext(function($ctx1) { var $1,$2;
  422. $1=_st(_st(aClass)._package()).__eq(_st(_st(self)._model())._selectedPackage());
  423. if(! smalltalk.assert($1)){
  424. $2=self;
  425. return $2;
  426. };
  427. _st(self)._setItemsForSelectedPackage();
  428. _st(self)._refresh();
  429. return self}, function($ctx1) {$ctx1.fill(self,"onClassAdded:",{aClass:aClass}, smalltalk.HLClassesListWidget)})},
  430. messageSends: ["ifFalse:", "=", "selectedPackage", "model", "package", "setItemsForSelectedPackage", "refresh"]}),
  431. smalltalk.HLClassesListWidget);
  432. smalltalk.addMethod(
  433. "_onClassRemoved_",
  434. smalltalk.method({
  435. selector: "onClassRemoved:",
  436. fn: function (aClass){
  437. var self=this;
  438. return smalltalk.withContext(function($ctx1) { var $1,$2,$3;
  439. $1=_st(_st(aClass)._package()).__eq(_st(_st(self)._model())._selectedPackage());
  440. if(! smalltalk.assert($1)){
  441. $2=self;
  442. return $2;
  443. };
  444. $3=_st(aClass).__eq(_st(_st(self)._model())._selectedClass());
  445. if(smalltalk.assert($3)){
  446. _st(self)._selectItem_(nil);
  447. };
  448. _st(self)._setItemsForSelectedPackage();
  449. _st(self)._refresh();
  450. return self}, function($ctx1) {$ctx1.fill(self,"onClassRemoved:",{aClass:aClass}, smalltalk.HLClassesListWidget)})},
  451. messageSends: ["ifFalse:", "=", "selectedPackage", "model", "package", "ifTrue:", "selectItem:", "selectedClass", "setItemsForSelectedPackage", "refresh"]}),
  452. smalltalk.HLClassesListWidget);
  453. smalltalk.addMethod(
  454. "_onClassSelected_",
  455. smalltalk.method({
  456. selector: "onClassSelected:",
  457. fn: function (aClass){
  458. var self=this;
  459. return smalltalk.withContext(function($ctx1) { var $1,$2,$3,$4,$5;
  460. _st(self)._selectedItem_(aClass);
  461. $1=aClass;
  462. if(($receiver = $1) == nil || $receiver == undefined){
  463. $2=self;
  464. return $2;
  465. } else {
  466. $1;
  467. };
  468. $3=_st(self)._hasFocus();
  469. if(! smalltalk.assert($3)){
  470. $4=self;
  471. _st($4)._activateItem_(aClass);
  472. $5=_st($4)._focus();
  473. $5;
  474. };
  475. return self}, function($ctx1) {$ctx1.fill(self,"onClassSelected:",{aClass:aClass},smalltalk.HLClassesListWidget)})},
  476. messageSends: ["selectedItem:", "ifNil:", "ifFalse:", "activateItem:", "focus", "hasFocus"]}),
  477. smalltalk.HLClassesListWidget);
  478. smalltalk.addMethod(
  479. "_onClassesFocusRequested",
  480. smalltalk.method({
  481. selector: "onClassesFocusRequested",
  482. fn: function (){
  483. var self=this;
  484. return smalltalk.withContext(function($ctx1) { _st(self)._focus();
  485. return self}, function($ctx1) {$ctx1.fill(self,"onClassesFocusRequested",{}, smalltalk.HLClassesListWidget)})},
  486. messageSends: ["focus"]}),
  487. smalltalk.HLClassesListWidget);
  488. smalltalk.addMethod(
  489. "_onPackageSelected_",
  490. smalltalk.method({
  491. selector: "onPackageSelected:",
  492. fn: function (aPackage){
  493. var self=this;
  494. return smalltalk.withContext(function($ctx1) { _st(self)._selectedItem_(nil);
  495. _st(self)._setItemsForSelectedPackage();
  496. _st(self)._refresh();
  497. return self}, function($ctx1) {$ctx1.fill(self,"onPackageSelected:",{aPackage:aPackage}, smalltalk.HLClassesListWidget)})},
  498. messageSends: ["selectedItem:", "setItemsForSelectedPackage", "refresh"]}),
  499. smalltalk.HLClassesListWidget);
  500. smalltalk.addMethod(
  501. "_onShowInstanceToggled",
  502. smalltalk.method({
  503. selector: "onShowInstanceToggled",
  504. fn: function (){
  505. var self=this;
  506. return smalltalk.withContext(function($ctx1) { _st(self)._refresh();
  507. return self}, function($ctx1) {$ctx1.fill(self,"onShowInstanceToggled",{}, smalltalk.HLClassesListWidget)})},
  508. messageSends: ["refresh"]}),
  509. smalltalk.HLClassesListWidget);
  510. smalltalk.addMethod(
  511. "_renderButtonsOn_",
  512. smalltalk.method({
  513. selector: "renderButtonsOn:",
  514. fn: function (html){
  515. var self=this;
  516. return smalltalk.withContext(function($ctx1) { var $1,$3,$4,$5,$6,$7,$8,$2,$9,$10;
  517. $1=_st(html)._div();
  518. _st($1)._class_("btn-group");
  519. _st($1)._at_put_("data-toggle","buttons-radio");
  520. $2=_st($1)._with_((function(){
  521. return smalltalk.withContext(function($ctx2) { $3=_st(html)._button();
  522. _st($3)._class_(_st((smalltalk.String || String))._streamContents_((function(str){
  523. return smalltalk.withContext(function($ctx3) { _st(str)._nextPutAll_("btn");
  524. $4=_st(self)._showInstance();
  525. if(smalltalk.assert($4)){
  526. return _st(str)._nextPutAll_(" active");
  527. };
  528. }, function($ctx3) {$ctx3.fillBlock({str:str},$ctx1)})})));
  529. _st($3)._with_("Instance");
  530. $5=_st($3)._onClick_((function(){
  531. return smalltalk.withContext(function($ctx3) { return _st(self)._showInstance_(true);
  532. }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
  533. $5;
  534. $6=_st(html)._button();
  535. _st($6)._class_(_st((smalltalk.String || String))._streamContents_((function(str){
  536. return smalltalk.withContext(function($ctx3) { _st(str)._nextPutAll_("btn");
  537. $7=_st(_st(self)._model())._showInstance();
  538. if(! smalltalk.assert($7)){
  539. return _st(str)._nextPutAll_(" active");
  540. };
  541. }, function($ctx3) {$ctx3.fillBlock({str:str},$ctx1)})})));
  542. _st($6)._with_("Class");
  543. $8=_st($6)._onClick_((function(){
  544. return smalltalk.withContext(function($ctx3) { return _st(_st(self)._model())._showInstance_(false);
  545. }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
  546. return $8;
  547. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  548. $9=_st(html)._button();
  549. _st($9)._class_("btn");
  550. _st($9)._at_put_("data-toggle","button");
  551. $10=_st($9)._with_("Comment");
  552. return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html}, smalltalk.HLClassesListWidget)})},
  553. messageSends: ["class:", "div", "at:put:", "with:", "streamContents:", "nextPutAll:", "ifTrue:", "showInstance", "button", "onClick:", "showInstance:", "ifFalse:", "model"]}),
  554. smalltalk.HLClassesListWidget);
  555. smalltalk.addMethod(
  556. "_renderItem_level_on_",
  557. smalltalk.method({
  558. selector: "renderItem:level:on:",
  559. fn: function (aClass,anInteger,html){
  560. var self=this;
  561. var li;
  562. return smalltalk.withContext(function($ctx1) { var $1,$3,$4,$2;
  563. li=_st(html)._li();
  564. _st(self)._registerMappingFrom_to_(aClass,li);
  565. $1=li;
  566. _st($1)._at_put_("list-data",_st(_st(self)._items())._indexOf_(aClass));
  567. _st($1)._class_(_st(self)._cssClassForItem_(aClass));
  568. $2=_st($1)._with_((function(){
  569. return smalltalk.withContext(function($ctx2) { $3=_st(html)._a();
  570. _st($3)._with_((function(){
  571. return smalltalk.withContext(function($ctx3) { _st(_st(html)._tag_("i"))._class_(_st(self)._iconForItem_(aClass));
  572. return _st(self)._renderItemLabel_level_on_(aClass,anInteger,html);
  573. }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
  574. $4=_st($3)._onClick_((function(){
  575. return smalltalk.withContext(function($ctx3) { return _st(self)._activateListItem_(_st(li)._asJQuery());
  576. }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
  577. return $4;
  578. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  579. _st(_st(self)._getChildrenOf_(aClass))._do_((function(each){
  580. return smalltalk.withContext(function($ctx2) { return _st(self)._renderItem_level_on_(each,_st(anInteger).__plus((1)),html);
  581. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
  582. return self}, function($ctx1) {$ctx1.fill(self,"renderItem:level:on:",{aClass:aClass,anInteger:anInteger,html:html,li:li},smalltalk.HLClassesListWidget)})},
  583. messageSends: ["li", "registerMappingFrom:to:", "at:put:", "indexOf:", "items", "class:", "cssClassForItem:", "with:", "iconForItem:", "tag:", "renderItemLabel:level:on:", "a", "onClick:", "activateListItem:", "asJQuery", "do:", "renderItem:level:on:", "+", "getChildrenOf:"]}),
  584. smalltalk.HLClassesListWidget);
  585. smalltalk.addMethod(
  586. "_renderItem_on_",
  587. smalltalk.method({
  588. selector: "renderItem:on:",
  589. fn: function (aClass,html){
  590. var self=this;
  591. return smalltalk.withContext(function($ctx1) { smalltalk.HLBrowserListWidget.fn.prototype._renderItem_on_.apply(_st(self), [aClass,html]);
  592. _st(_st(self)._getChildrenOf_(aClass))._do_((function(each){
  593. return smalltalk.withContext(function($ctx2) { return _st(self)._renderItem_level_on_(each,(1),html);
  594. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
  595. return self}, function($ctx1) {$ctx1.fill(self,"renderItem:on:",{aClass:aClass,html:html}, smalltalk.HLClassesListWidget)})},
  596. messageSends: ["renderItem:on:", "do:", "renderItem:level:on:", "getChildrenOf:"]}),
  597. smalltalk.HLClassesListWidget);
  598. smalltalk.addMethod(
  599. "_renderItemLabel_level_on_",
  600. smalltalk.method({
  601. selector: "renderItemLabel:level:on:",
  602. fn: function (aClass,anInteger,html){
  603. var self=this;
  604. return smalltalk.withContext(function($ctx1) { _st(_st(_st(html)._span())._asJQuery())._html_(_st((smalltalk.String || String))._streamContents_((function(str){
  605. return smalltalk.withContext(function($ctx2) { _st(anInteger)._timesRepeat_((function(){
  606. return smalltalk.withContext(function($ctx3) { return _st(str)._nextPutAll_("    ");
  607. }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
  608. return _st(str)._nextPutAll_(_st(aClass)._name());
  609. }, function($ctx2) {$ctx2.fillBlock({str:str},$ctx1)})})));
  610. return self}, function($ctx1) {$ctx1.fill(self,"renderItemLabel:level:on:",{aClass:aClass,anInteger:anInteger,html:html}, smalltalk.HLClassesListWidget)})},
  611. messageSends: ["html:", "streamContents:", "timesRepeat:", "nextPutAll:", "name", "asJQuery", "span"]}),
  612. smalltalk.HLClassesListWidget);
  613. smalltalk.addMethod(
  614. "_renderItemLabel_on_",
  615. smalltalk.method({
  616. selector: "renderItemLabel:on:",
  617. fn: function (aClass,html){
  618. var self=this;
  619. return smalltalk.withContext(function($ctx1) { _st(self)._renderItemLabel_level_on_(aClass,(0),html);
  620. return self}, function($ctx1) {$ctx1.fill(self,"renderItemLabel:on:",{aClass:aClass,html:html}, smalltalk.HLClassesListWidget)})},
  621. messageSends: ["renderItemLabel:level:on:"]}),
  622. smalltalk.HLClassesListWidget);
  623. smalltalk.addMethod(
  624. "_renderListOn_",
  625. smalltalk.method({
  626. selector: "renderListOn:",
  627. fn: function (html){
  628. var self=this;
  629. return smalltalk.withContext(function($ctx1) { _st(_st(self)._getRootClassesOf_(_st(self)._items()))._do_((function(each){
  630. return smalltalk.withContext(function($ctx2) { return _st(self)._renderItem_on_(each,html);
  631. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
  632. return self}, function($ctx1) {$ctx1.fill(self,"renderListOn:",{html:html}, smalltalk.HLClassesListWidget)})},
  633. messageSends: ["do:", "renderItem:on:", "getRootClassesOf:", "items"]}),
  634. smalltalk.HLClassesListWidget);
  635. smalltalk.addMethod(
  636. "_selectItem_",
  637. smalltalk.method({
  638. selector: "selectItem:",
  639. fn: function (aClass){
  640. var self=this;
  641. return smalltalk.withContext(function($ctx1) { _st(_st(self)._model())._selectedClass_(aClass);
  642. return self}, function($ctx1) {$ctx1.fill(self,"selectItem:",{aClass:aClass}, smalltalk.HLClassesListWidget)})},
  643. messageSends: ["selectedClass:", "model"]}),
  644. smalltalk.HLClassesListWidget);
  645. smalltalk.addMethod(
  646. "_setItemsForPackage_",
  647. smalltalk.method({
  648. selector: "setItemsForPackage:",
  649. fn: function (aPackage){
  650. var self=this;
  651. return smalltalk.withContext(function($ctx1) { var $1,$3,$2;
  652. $1=self;
  653. $3=aPackage;
  654. if(($receiver = $3) == nil || $receiver == undefined){
  655. $2=[];
  656. } else {
  657. $2=_st(_st(_st(_st(_st(aPackage)._classes())._collect_((function(each){
  658. return smalltalk.withContext(function($ctx2) { return _st(each)._theNonMetaClass();
  659. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._asSet())._asArray())._sort_((function(a,b){
  660. return smalltalk.withContext(function($ctx2) { return _st(_st(a)._name()).__lt(_st(b)._name());
  661. }, function($ctx2) {$ctx2.fillBlock({a:a,b:b},$ctx1)})}));
  662. };
  663. _st($1)._items_($2);
  664. return self}, function($ctx1) {$ctx1.fill(self,"setItemsForPackage:",{aPackage:aPackage}, smalltalk.HLClassesListWidget)})},
  665. messageSends: ["items:", "ifNil:ifNotNil:", "sort:", "<", "name", "asArray", "asSet", "collect:", "theNonMetaClass", "classes"]}),
  666. smalltalk.HLClassesListWidget);
  667. smalltalk.addMethod(
  668. "_setItemsForSelectedPackage",
  669. smalltalk.method({
  670. selector: "setItemsForSelectedPackage",
  671. fn: function (){
  672. var self=this;
  673. return smalltalk.withContext(function($ctx1) { _st(self)._setItemsForPackage_(_st(_st(self)._model())._selectedPackage());
  674. return self}, function($ctx1) {$ctx1.fill(self,"setItemsForSelectedPackage",{}, smalltalk.HLClassesListWidget)})},
  675. messageSends: ["setItemsForPackage:", "selectedPackage", "model"]}),
  676. smalltalk.HLClassesListWidget);
  677. smalltalk.addMethod(
  678. "_showInstance",
  679. smalltalk.method({
  680. selector: "showInstance",
  681. fn: function (){
  682. var self=this;
  683. return smalltalk.withContext(function($ctx1) { var $1;
  684. $1=_st(_st(self)._model())._showInstance();
  685. return $1;
  686. }, function($ctx1) {$ctx1.fill(self,"showInstance",{}, smalltalk.HLClassesListWidget)})},
  687. messageSends: ["showInstance", "model"]}),
  688. smalltalk.HLClassesListWidget);
  689. smalltalk.addMethod(
  690. "_showInstance_",
  691. smalltalk.method({
  692. selector: "showInstance:",
  693. fn: function (aBoolean){
  694. var self=this;
  695. return smalltalk.withContext(function($ctx1) { _st(_st(self)._model())._showInstance_(aBoolean);
  696. return self}, function($ctx1) {$ctx1.fill(self,"showInstance:",{aBoolean:aBoolean}, smalltalk.HLClassesListWidget)})},
  697. messageSends: ["showInstance:", "model"]}),
  698. smalltalk.HLClassesListWidget);
  699. smalltalk.addClass('HLMethodsListWidget', smalltalk.HLBrowserListWidget, [], 'Helios-Browser');
  700. smalltalk.addMethod(
  701. "_allProtocol",
  702. smalltalk.method({
  703. selector: "allProtocol",
  704. fn: function (){
  705. var self=this;
  706. return smalltalk.withContext(function($ctx1) { var $1;
  707. $1=_st(_st(self)._model())._allProtocol();
  708. return $1;
  709. }, function($ctx1) {$ctx1.fill(self,"allProtocol",{}, smalltalk.HLMethodsListWidget)})},
  710. messageSends: ["allProtocol", "model"]}),
  711. smalltalk.HLMethodsListWidget);
  712. smalltalk.addMethod(
  713. "_flushSelectorsCache",
  714. smalltalk.method({
  715. selector: "flushSelectorsCache",
  716. fn: function (){
  717. var self=this;
  718. return smalltalk.withContext(function($ctx1) { self["@selectorsCache"]=_st((smalltalk.Dictionary || Dictionary))._new();
  719. return self}, function($ctx1) {$ctx1.fill(self,"flushSelectorsCache",{}, smalltalk.HLMethodsListWidget)})},
  720. messageSends: ["new"]}),
  721. smalltalk.HLMethodsListWidget);
  722. smalltalk.addMethod(
  723. "_iconForItem_",
  724. smalltalk.method({
  725. selector: "iconForItem:",
  726. fn: function (aSelector){
  727. var self=this;
  728. var override,overriden,method;
  729. return smalltalk.withContext(function($ctx1) { var $2,$3,$4,$1;
  730. method=_st(self)._methodForSelector_(aSelector);
  731. override=_st(self)._isOverride_(method);
  732. overriden=_st(self)._isOverridden_(method);
  733. $2=override;
  734. if(smalltalk.assert($2)){
  735. $3=overriden;
  736. if(smalltalk.assert($3)){
  737. $1="icon-resize-vertical";
  738. } else {
  739. $1="icon-arrow-up";
  740. };
  741. } else {
  742. $4=overriden;
  743. if(smalltalk.assert($4)){
  744. $1="icon-arrow-down";
  745. } else {
  746. $1="icon-none";
  747. };
  748. };
  749. return $1;
  750. }, function($ctx1) {$ctx1.fill(self,"iconForItem:",{aSelector:aSelector,override:override,overriden:overriden,method:method}, smalltalk.HLMethodsListWidget)})},
  751. messageSends: ["methodForSelector:", "isOverride:", "isOverridden:", "ifTrue:ifFalse:"]}),
  752. smalltalk.HLMethodsListWidget);
  753. smalltalk.addMethod(
  754. "_initialize",
  755. smalltalk.method({
  756. selector: "initialize",
  757. fn: function (){
  758. var self=this;
  759. return smalltalk.withContext(function($ctx1) { smalltalk.HLBrowserListWidget.fn.prototype._initialize.apply(_st(self), []);
  760. _st(self)._flushSelectorsCache();
  761. return self}, function($ctx1) {$ctx1.fill(self,"initialize",{}, smalltalk.HLMethodsListWidget)})},
  762. messageSends: ["initialize", "flushSelectorsCache"]}),
  763. smalltalk.HLMethodsListWidget);
  764. smalltalk.addMethod(
  765. "_isOverridden_",
  766. smalltalk.method({
  767. selector: "isOverridden:",
  768. fn: function (aMethod){
  769. var self=this;
  770. return smalltalk.withContext(function($ctx1) { var $1;
  771. $1=_st(_st(self)._selectorsCache())._isOverridden_(aMethod);
  772. return $1;
  773. }, function($ctx1) {$ctx1.fill(self,"isOverridden:",{aMethod:aMethod}, smalltalk.HLMethodsListWidget)})},
  774. messageSends: ["isOverridden:", "selectorsCache"]}),
  775. smalltalk.HLMethodsListWidget);
  776. smalltalk.addMethod(
  777. "_isOverride_",
  778. smalltalk.method({
  779. selector: "isOverride:",
  780. fn: function (aMethod){
  781. var self=this;
  782. return smalltalk.withContext(function($ctx1) { var $1;
  783. $1=_st(_st(self)._selectorsCache())._isOverride_(aMethod);
  784. return $1;
  785. }, function($ctx1) {$ctx1.fill(self,"isOverride:",{aMethod:aMethod}, smalltalk.HLMethodsListWidget)})},
  786. messageSends: ["isOverride:", "selectorsCache"]}),
  787. smalltalk.HLMethodsListWidget);
  788. smalltalk.addMethod(
  789. "_methodForSelector_",
  790. smalltalk.method({
  791. selector: "methodForSelector:",
  792. fn: function (aSelector){
  793. var self=this;
  794. return smalltalk.withContext(function($ctx1) { var $1;
  795. $1=_st(_st(_st(_st(self)._model())._selectedClass())._methodDictionary())._at_(aSelector);
  796. return $1;
  797. }, function($ctx1) {$ctx1.fill(self,"methodForSelector:",{aSelector:aSelector}, smalltalk.HLMethodsListWidget)})},
  798. messageSends: ["at:", "methodDictionary", "selectedClass", "model"]}),
  799. smalltalk.HLMethodsListWidget);
  800. smalltalk.addMethod(
  801. "_methodsInProtocol_",
  802. smalltalk.method({
  803. selector: "methodsInProtocol:",
  804. fn: function (aString){
  805. var self=this;
  806. return smalltalk.withContext(function($ctx1) { var $1,$3,$2;
  807. $1=_st(_st(self)._model())._selectedClass();
  808. if(($receiver = $1) == nil || $receiver == undefined){
  809. return [];
  810. } else {
  811. $1;
  812. };
  813. $3=_st(aString).__eq(_st(self)._allProtocol());
  814. if(smalltalk.assert($3)){
  815. $2=_st(_st(_st(self)._model())._selectedClass())._methods();
  816. } else {
  817. $2=_st(_st(_st(self)._model())._selectedClass())._methodsInProtocol_(aString);
  818. };
  819. return $2;
  820. }, function($ctx1) {$ctx1.fill(self,"methodsInProtocol:",{aString:aString}, smalltalk.HLMethodsListWidget)})},
  821. messageSends: ["ifNil:", "selectedClass", "model", "ifTrue:ifFalse:", "methods", "methodsInProtocol:", "=", "allProtocol"]}),
  822. smalltalk.HLMethodsListWidget);
  823. smalltalk.addMethod(
  824. "_observeModel",
  825. smalltalk.method({
  826. selector: "observeModel",
  827. fn: function (){
  828. var self=this;
  829. return smalltalk.withContext(function($ctx1) { var $1,$2;
  830. $1=_st(_st(self)._model())._announcer();
  831. _st($1)._on_do_((smalltalk.HLProtocolSelected || HLProtocolSelected),(function(ann){
  832. return smalltalk.withContext(function($ctx2) { return _st(self)._onProtocolSelected_(_st(ann)._item());
  833. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  834. _st($1)._on_do_((smalltalk.HLShowInstanceToggled || HLShowInstanceToggled),(function(ann){
  835. return smalltalk.withContext(function($ctx2) { return _st(self)._onProtocolSelected_(nil);
  836. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  837. _st($1)._on_do_((smalltalk.HLMethodSelected || HLMethodSelected),(function(ann){
  838. return smalltalk.withContext(function($ctx2) { return _st(self)._onMethodSelected_(_st(ann)._item());
  839. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  840. $2=_st($1)._on_do_((smalltalk.HLMethodsFocusRequested || HLMethodsFocusRequested),(function(ann){
  841. return smalltalk.withContext(function($ctx2) { return _st(self)._onMethodsFocusRequested();
  842. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  843. return self}, function($ctx1) {$ctx1.fill(self,"observeModel",{}, smalltalk.HLMethodsListWidget)})},
  844. messageSends: ["on:do:", "onProtocolSelected:", "item", "announcer", "model", "onMethodSelected:", "onMethodsFocusRequested"]}),
  845. smalltalk.HLMethodsListWidget);
  846. smalltalk.addMethod(
  847. "_observeSystem",
  848. smalltalk.method({
  849. selector: "observeSystem",
  850. fn: function (){
  851. var self=this;
  852. return smalltalk.withContext(function($ctx1) { var $1,$2;
  853. $1=_st((smalltalk.SystemAnnouncer || SystemAnnouncer))._current();
  854. _st($1)._on_do_((smalltalk.ProtocolAdded || ProtocolAdded),(function(ann){
  855. return smalltalk.withContext(function($ctx2) { return _st(self)._onProtocolAdded_(_st(ann)._theClass());
  856. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  857. _st($1)._on_do_((smalltalk.ProtocolRemoved || ProtocolRemoved),(function(ann){
  858. return smalltalk.withContext(function($ctx2) { return _st(self)._onProtocolRemoved_(_st(ann)._theClass());
  859. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  860. _st($1)._on_do_((smalltalk.MethodAdded || MethodAdded),(function(ann){
  861. return smalltalk.withContext(function($ctx2) { return _st(self)._onMethodAdded_(_st(ann)._method());
  862. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  863. $2=_st($1)._on_do_((smalltalk.MethodRemoved || MethodRemoved),(function(ann){
  864. return smalltalk.withContext(function($ctx2) { return _st(self)._onMethodRemoved_(_st(ann)._method());
  865. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  866. return self}, function($ctx1) {$ctx1.fill(self,"observeSystem",{},smalltalk.HLMethodsListWidget)})},
  867. messageSends: ["on:do:", "onProtocolAdded:", "theClass", "current", "onProtocolRemoved:", "onMethodAdded:", "method", "onMethodRemoved:"]}),
  868. smalltalk.HLMethodsListWidget);
  869. smalltalk.addMethod(
  870. "_onMethodAdded_",
  871. smalltalk.method({
  872. selector: "onMethodAdded:",
  873. fn: function (aMethod){
  874. var self=this;
  875. return smalltalk.withContext(function($ctx1) { var $1,$2;
  876. $1=_st(_st(_st(self)._model())._selectedClass()).__eq(_st(aMethod)._methodClass());
  877. if(! smalltalk.assert($1)){
  878. $2=self;
  879. return $2;
  880. };
  881. _st(self)._setItemsForSelectedProtocol();
  882. _st(self)._refresh();
  883. return self}, function($ctx1) {$ctx1.fill(self,"onMethodAdded:",{aMethod:aMethod}, smalltalk.HLMethodsListWidget)})},
  884. messageSends: ["ifFalse:", "=", "methodClass", "selectedClass", "model", "setItemsForSelectedProtocol", "refresh"]}),
  885. smalltalk.HLMethodsListWidget);
  886. smalltalk.addMethod(
  887. "_onMethodRemoved_",
  888. smalltalk.method({
  889. selector: "onMethodRemoved:",
  890. fn: function (aMethod){
  891. var self=this;
  892. return smalltalk.withContext(function($ctx1) { var $1,$2,$3;
  893. var $early={};
  894. try {
  895. _st(_st(self)._items())._detect_ifNone_((function(each){
  896. return smalltalk.withContext(function($ctx2) { return _st(each).__eq(_st(aMethod)._selector());
  897. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
  898. return smalltalk.withContext(function($ctx2) { $1=self;
  899. throw $early=[$1];
  900. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  901. $2=_st(self)._selectedItem();
  902. if(($receiver = $2) == nil || $receiver == undefined){
  903. $2;
  904. } else {
  905. $3=_st(_st(_st(aMethod)._methodClass()).__eq(_st(_st(self)._model())._selectedClass()))._and_((function(){
  906. return smalltalk.withContext(function($ctx2) { return _st(_st(aMethod)._selector()).__eq(_st(_st(self)._selectedItem())._selector());
  907. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  908. if(smalltalk.assert($3)){
  909. _st(self)._selectItem_(nil);
  910. };
  911. };
  912. _st(self)._setItemsForSelectedProtocol();
  913. _st(self)._refresh();
  914. return self}
  915. catch(e) {if(e===$early)return e[0]; throw e}
  916. }, function($ctx1) {$ctx1.fill(self,"onMethodRemoved:",{aMethod:aMethod}, smalltalk.HLMethodsListWidget)})},
  917. messageSends: ["detect:ifNone:", "=", "selector", "items", "ifNotNil:", "ifTrue:", "selectItem:", "and:", "selectedItem", "selectedClass", "model", "methodClass", "setItemsForSelectedProtocol", "refresh"]}),
  918. smalltalk.HLMethodsListWidget);
  919. smalltalk.addMethod(
  920. "_onMethodSelected_",
  921. smalltalk.method({
  922. selector: "onMethodSelected:",
  923. fn: function (aMethod){
  924. var self=this;
  925. return smalltalk.withContext(function($ctx1) { var $1,$2,$3,$4,$5;
  926. _st(self)._selectedItem_(aMethod);
  927. $1=aMethod;
  928. if(($receiver = $1) == nil || $receiver == undefined){
  929. $2=self;
  930. return $2;
  931. } else {
  932. $1;
  933. };
  934. $3=_st(self)._hasFocus();
  935. if(! smalltalk.assert($3)){
  936. $4=self;
  937. _st($4)._activateItem_(aMethod);
  938. $5=_st($4)._focus();
  939. $5;
  940. };
  941. return self}, function($ctx1) {$ctx1.fill(self,"onMethodSelected:",{aMethod:aMethod},smalltalk.HLMethodsListWidget)})},
  942. messageSends: ["selectedItem:", "ifNil:", "ifFalse:", "activateItem:", "focus", "hasFocus"]}),
  943. smalltalk.HLMethodsListWidget);
  944. smalltalk.addMethod(
  945. "_onMethodsFocusRequested",
  946. smalltalk.method({
  947. selector: "onMethodsFocusRequested",
  948. fn: function (){
  949. var self=this;
  950. return smalltalk.withContext(function($ctx1) { _st(self)._focus();
  951. return self}, function($ctx1) {$ctx1.fill(self,"onMethodsFocusRequested",{}, smalltalk.HLMethodsListWidget)})},
  952. messageSends: ["focus"]}),
  953. smalltalk.HLMethodsListWidget);
  954. smalltalk.addMethod(
  955. "_onProtocolAdded_",
  956. smalltalk.method({
  957. selector: "onProtocolAdded:",
  958. fn: function (aClass){
  959. var self=this;
  960. return smalltalk.withContext(function($ctx1) { var $1,$2;
  961. $1=_st(_st(_st(self)._model())._selectedClass()).__eq(aClass);
  962. if(! smalltalk.assert($1)){
  963. $2=self;
  964. return $2;
  965. };
  966. _st(self)._setItemsForSelectedProtocol();
  967. _st(self)._refresh();
  968. _st(self)._focus();
  969. return self}, function($ctx1) {$ctx1.fill(self,"onProtocolAdded:",{aClass:aClass},smalltalk.HLMethodsListWidget)})},
  970. messageSends: ["ifFalse:", "=", "selectedClass", "model", "setItemsForSelectedProtocol", "refresh", "focus"]}),
  971. smalltalk.HLMethodsListWidget);
  972. smalltalk.addMethod(
  973. "_onProtocolRemoved_",
  974. smalltalk.method({
  975. selector: "onProtocolRemoved:",
  976. fn: function (aClass){
  977. var self=this;
  978. return smalltalk.withContext(function($ctx1) { var $1,$2;
  979. $1=_st(_st(_st(self)._model())._selectedClass()).__eq(aClass);
  980. if(! smalltalk.assert($1)){
  981. $2=self;
  982. return $2;
  983. };
  984. _st(self)._setItemsForSelectedProtocol();
  985. _st(self)._refresh();
  986. _st(self)._focus();
  987. return self}, function($ctx1) {$ctx1.fill(self,"onProtocolRemoved:",{aClass:aClass},smalltalk.HLMethodsListWidget)})},
  988. messageSends: ["ifFalse:", "=", "selectedClass", "model", "setItemsForSelectedProtocol", "refresh", "focus"]}),
  989. smalltalk.HLMethodsListWidget);
  990. smalltalk.addMethod(
  991. "_onProtocolSelected_",
  992. smalltalk.method({
  993. selector: "onProtocolSelected:",
  994. fn: function (aString){
  995. var self=this;
  996. return smalltalk.withContext(function($ctx1) { _st(self)._selectedItem_(nil);
  997. _st(self)._setItemsForSelectedProtocol();
  998. _st(self)._refresh();
  999. return self}, function($ctx1) {$ctx1.fill(self,"onProtocolSelected:",{aString:aString}, smalltalk.HLMethodsListWidget)})},
  1000. messageSends: ["selectedItem:", "setItemsForSelectedProtocol", "refresh"]}),
  1001. smalltalk.HLMethodsListWidget);
  1002. smalltalk.addMethod(
  1003. "_overrideSelectors",
  1004. smalltalk.method({
  1005. selector: "overrideSelectors",
  1006. fn: function (){
  1007. var self=this;
  1008. return smalltalk.withContext(function($ctx1) { var $2,$3,$1;
  1009. $1=_st(_st(self)._selectorsCache())._at_ifAbsentPut_("override",(function(){
  1010. return smalltalk.withContext(function($ctx2) { return _st(_st(_st(_st(self)._model())._selectedClass())._allSuperclasses())._inject_into_(_st((smalltalk.Set || Set))._new(),(function(acc,each){
  1011. return smalltalk.withContext(function($ctx3) { $2=acc;
  1012. _st($2)._addAll_(_st(each)._selectors());
  1013. $3=_st($2)._yourself();
  1014. return $3;
  1015. }, function($ctx3) {$ctx3.fillBlock({acc:acc,each:each},$ctx1)})}));
  1016. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1017. return $1;
  1018. }, function($ctx1) {$ctx1.fill(self,"overrideSelectors",{}, smalltalk.HLMethodsListWidget)})},
  1019. messageSends: ["at:ifAbsentPut:", "inject:into:", "new", "addAll:", "selectors", "yourself", "allSuperclasses", "selectedClass", "model", "selectorsCache"]}),
  1020. smalltalk.HLMethodsListWidget);
  1021. smalltalk.addMethod(
  1022. "_overridenSelectors",
  1023. smalltalk.method({
  1024. selector: "overridenSelectors",
  1025. fn: function (){
  1026. var self=this;
  1027. return smalltalk.withContext(function($ctx1) { var $2,$3,$1;
  1028. $1=_st(_st(self)._selectorsCache())._at_ifAbsentPut_("overriden",(function(){
  1029. return smalltalk.withContext(function($ctx2) { return _st(_st(_st(_st(self)._model())._selectedClass())._allSubclasses())._inject_into_(_st((smalltalk.Set || Set))._new(),(function(acc,each){
  1030. return smalltalk.withContext(function($ctx3) { $2=acc;
  1031. _st($2)._addAll_(_st(each)._selectors());
  1032. $3=_st($2)._yourself();
  1033. return $3;
  1034. }, function($ctx3) {$ctx3.fillBlock({acc:acc,each:each},$ctx1)})}));
  1035. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1036. return $1;
  1037. }, function($ctx1) {$ctx1.fill(self,"overridenSelectors",{}, smalltalk.HLMethodsListWidget)})},
  1038. messageSends: ["at:ifAbsentPut:", "inject:into:", "new", "addAll:", "selectors", "yourself", "allSubclasses", "selectedClass", "model", "selectorsCache"]}),
  1039. smalltalk.HLMethodsListWidget);
  1040. smalltalk.addMethod(
  1041. "_renderContentOn_",
  1042. smalltalk.method({
  1043. selector: "renderContentOn:",
  1044. fn: function (html){
  1045. var self=this;
  1046. return smalltalk.withContext(function($ctx1) { var $1,$2,$3;
  1047. $1=_st(_st(self)._model())._showInstance();
  1048. if(smalltalk.assert($1)){
  1049. smalltalk.HLBrowserListWidget.fn.prototype._renderContentOn_.apply(_st(self), [html]);
  1050. } else {
  1051. $2=_st(html)._div();
  1052. _st($2)._class_("class_side");
  1053. $3=_st($2)._with_((function(){
  1054. return smalltalk.withContext(function($ctx2) { return smalltalk.HLBrowserListWidget.fn.prototype._renderContentOn_.apply(_st(self), [html]);
  1055. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1056. $3;
  1057. };
  1058. return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html}, smalltalk.HLMethodsListWidget)})},
  1059. messageSends: ["ifFalse:ifTrue:", "class:", "div", "with:", "renderContentOn:", "showInstance", "model"]}),
  1060. smalltalk.HLMethodsListWidget);
  1061. smalltalk.addMethod(
  1062. "_renderItemLabel_on_",
  1063. smalltalk.method({
  1064. selector: "renderItemLabel:on:",
  1065. fn: function (aSelector,html){
  1066. var self=this;
  1067. return smalltalk.withContext(function($ctx1) { _st(html)._with_(aSelector);
  1068. return self}, function($ctx1) {$ctx1.fill(self,"renderItemLabel:on:",{aSelector:aSelector,html:html}, smalltalk.HLMethodsListWidget)})},
  1069. messageSends: ["with:"]}),
  1070. smalltalk.HLMethodsListWidget);
  1071. smalltalk.addMethod(
  1072. "_selectItem_",
  1073. smalltalk.method({
  1074. selector: "selectItem:",
  1075. fn: function (aSelector){
  1076. var self=this;
  1077. return smalltalk.withContext(function($ctx1) { var $1,$2;
  1078. $1=aSelector;
  1079. if(($receiver = $1) == nil || $receiver == undefined){
  1080. $2=_st(_st(self)._model())._selectedMethod_(nil);
  1081. return $2;
  1082. } else {
  1083. $1;
  1084. };
  1085. _st(_st(self)._model())._selectedMethod_(_st(self)._methodForSelector_(aSelector));
  1086. return self}, function($ctx1) {$ctx1.fill(self,"selectItem:",{aSelector:aSelector}, smalltalk.HLMethodsListWidget)})},
  1087. messageSends: ["ifNil:", "selectedMethod:", "model", "methodForSelector:"]}),
  1088. smalltalk.HLMethodsListWidget);
  1089. smalltalk.addMethod(
  1090. "_selectorsCache",
  1091. smalltalk.method({
  1092. selector: "selectorsCache",
  1093. fn: function (){
  1094. var self=this;
  1095. return smalltalk.withContext(function($ctx1) { var $1;
  1096. $1=_st(_st(self)._class())._selectorsCache();
  1097. return $1;
  1098. }, function($ctx1) {$ctx1.fill(self,"selectorsCache",{}, smalltalk.HLMethodsListWidget)})},
  1099. messageSends: ["selectorsCache", "class"]}),
  1100. smalltalk.HLMethodsListWidget);
  1101. smalltalk.addMethod(
  1102. "_selectorsInProtocol_",
  1103. smalltalk.method({
  1104. selector: "selectorsInProtocol:",
  1105. fn: function (aString){
  1106. var self=this;
  1107. return smalltalk.withContext(function($ctx1) { var $1;
  1108. $1=_st(_st(self)._methodsInProtocol_(aString))._collect_((function(each){
  1109. return smalltalk.withContext(function($ctx2) { return _st(each)._selector();
  1110. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
  1111. return $1;
  1112. }, function($ctx1) {$ctx1.fill(self,"selectorsInProtocol:",{aString:aString}, smalltalk.HLMethodsListWidget)})},
  1113. messageSends: ["collect:", "selector", "methodsInProtocol:"]}),
  1114. smalltalk.HLMethodsListWidget);
  1115. smalltalk.addMethod(
  1116. "_setItemsForProtocol_",
  1117. smalltalk.method({
  1118. selector: "setItemsForProtocol:",
  1119. fn: function (aString){
  1120. var self=this;
  1121. return smalltalk.withContext(function($ctx1) { var $2,$4,$3,$1;
  1122. $2=self;
  1123. $4=aString;
  1124. if(($receiver = $4) == nil || $receiver == undefined){
  1125. $3=[];
  1126. } else {
  1127. $3=_st(self)._selectorsInProtocol_(aString);
  1128. };
  1129. $1=_st($2)._items_($3);
  1130. return $1;
  1131. }, function($ctx1) {$ctx1.fill(self,"setItemsForProtocol:",{aString:aString}, smalltalk.HLMethodsListWidget)})},
  1132. messageSends: ["items:", "ifNil:ifNotNil:", "selectorsInProtocol:"]}),
  1133. smalltalk.HLMethodsListWidget);
  1134. smalltalk.addMethod(
  1135. "_setItemsForSelectedProtocol",
  1136. smalltalk.method({
  1137. selector: "setItemsForSelectedProtocol",
  1138. fn: function (){
  1139. var self=this;
  1140. return smalltalk.withContext(function($ctx1) { _st(self)._setItemsForProtocol_(_st(_st(self)._model())._selectedProtocol());
  1141. return self}, function($ctx1) {$ctx1.fill(self,"setItemsForSelectedProtocol",{}, smalltalk.HLMethodsListWidget)})},
  1142. messageSends: ["setItemsForProtocol:", "selectedProtocol", "model"]}),
  1143. smalltalk.HLMethodsListWidget);
  1144. smalltalk.HLMethodsListWidget.klass.iVarNames = ['selectorsCache'];
  1145. smalltalk.addMethod(
  1146. "_selectorsCache",
  1147. smalltalk.method({
  1148. selector: "selectorsCache",
  1149. fn: function (){
  1150. var self=this;
  1151. return smalltalk.withContext(function($ctx1) { var $1;
  1152. $1=_st((smalltalk.HLSelectorsCache || HLSelectorsCache))._current();
  1153. return $1;
  1154. }, function($ctx1) {$ctx1.fill(self,"selectorsCache",{}, smalltalk.HLMethodsListWidget.klass)})},
  1155. messageSends: ["current"]}),
  1156. smalltalk.HLMethodsListWidget.klass);
  1157. smalltalk.addClass('HLPackagesListWidget', smalltalk.HLBrowserListWidget, [], 'Helios-Browser');
  1158. smalltalk.addMethod(
  1159. "_focusClassesListWidget",
  1160. smalltalk.method({
  1161. selector: "focusClassesListWidget",
  1162. fn: function (){
  1163. var self=this;
  1164. return smalltalk.withContext(function($ctx1) { _st(_st(_st(self)._model())._announcer())._announce_(_st((smalltalk.HLClassesListFocus || HLClassesListFocus))._new());
  1165. return self}, function($ctx1) {$ctx1.fill(self,"focusClassesListWidget",{}, smalltalk.HLPackagesListWidget)})},
  1166. messageSends: ["announce:", "new", "announcer", "model"]}),
  1167. smalltalk.HLPackagesListWidget);
  1168. smalltalk.addMethod(
  1169. "_initializeItems",
  1170. smalltalk.method({
  1171. selector: "initializeItems",
  1172. fn: function (){
  1173. var self=this;
  1174. return smalltalk.withContext(function($ctx1) { var $1;
  1175. self["@items"]=_st(_st(_st(self)._model())._packages())._sort_((function(a,b){
  1176. return smalltalk.withContext(function($ctx2) { return _st(_st(a)._name()).__lt(_st(b)._name());
  1177. }, function($ctx2) {$ctx2.fillBlock({a:a,b:b},$ctx1)})}));
  1178. $1=self["@items"];
  1179. return $1;
  1180. }, function($ctx1) {$ctx1.fill(self,"initializeItems",{}, smalltalk.HLPackagesListWidget)})},
  1181. messageSends: ["sort:", "<", "name", "packages", "model"]}),
  1182. smalltalk.HLPackagesListWidget);
  1183. smalltalk.addMethod(
  1184. "_items",
  1185. smalltalk.method({
  1186. selector: "items",
  1187. fn: function (){
  1188. var self=this;
  1189. return smalltalk.withContext(function($ctx1) { var $2,$1;
  1190. $2=self["@items"];
  1191. if(($receiver = $2) == nil || $receiver == undefined){
  1192. $1=_st(self)._initializeItems();
  1193. } else {
  1194. $1=$2;
  1195. };
  1196. return $1;
  1197. }, function($ctx1) {$ctx1.fill(self,"items",{}, smalltalk.HLPackagesListWidget)})},
  1198. messageSends: ["ifNil:", "initializeItems"]}),
  1199. smalltalk.HLPackagesListWidget);
  1200. smalltalk.addMethod(
  1201. "_observeModel",
  1202. smalltalk.method({
  1203. selector: "observeModel",
  1204. fn: function (){
  1205. var self=this;
  1206. return smalltalk.withContext(function($ctx1) { var $1,$2;
  1207. $1=_st(_st(self)._model())._announcer();
  1208. _st($1)._on_do_((smalltalk.HLPackageSelected || HLPackageSelected),(function(ann){
  1209. return smalltalk.withContext(function($ctx2) { return _st(self)._onPackageSelected_(_st(ann)._item());
  1210. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  1211. $2=_st($1)._on_do_((smalltalk.HLPackagesFocusRequested || HLPackagesFocusRequested),(function(ann){
  1212. return smalltalk.withContext(function($ctx2) { return _st(self)._onPackagesFocusRequested();
  1213. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  1214. return self}, function($ctx1) {$ctx1.fill(self,"observeModel",{}, smalltalk.HLPackagesListWidget)})},
  1215. messageSends: ["on:do:", "onPackageSelected:", "item", "announcer", "model", "onPackagesFocusRequested"]}),
  1216. smalltalk.HLPackagesListWidget);
  1217. smalltalk.addMethod(
  1218. "_onPackageSelected_",
  1219. smalltalk.method({
  1220. selector: "onPackageSelected:",
  1221. fn: function (aPackage){
  1222. var self=this;
  1223. return smalltalk.withContext(function($ctx1) { var $1,$2,$3;
  1224. _st(self)._selectedItem_(aPackage);
  1225. $1=_st(self)._hasFocus();
  1226. if(! smalltalk.assert($1)){
  1227. $2=self;
  1228. _st($2)._activateItem_(aPackage);
  1229. $3=_st($2)._focus();
  1230. $3;
  1231. };
  1232. return self}, function($ctx1) {$ctx1.fill(self,"onPackageSelected:",{aPackage:aPackage},smalltalk.HLPackagesListWidget)})},
  1233. messageSends: ["selectedItem:", "ifFalse:", "activateItem:", "focus", "hasFocus"]}),
  1234. smalltalk.HLPackagesListWidget);
  1235. smalltalk.addMethod(
  1236. "_onPackagesFocusRequested",
  1237. smalltalk.method({
  1238. selector: "onPackagesFocusRequested",
  1239. fn: function (){
  1240. var self=this;
  1241. return smalltalk.withContext(function($ctx1) { _st(self)._focus();
  1242. return self}, function($ctx1) {$ctx1.fill(self,"onPackagesFocusRequested",{}, smalltalk.HLPackagesListWidget)})},
  1243. messageSends: ["focus"]}),
  1244. smalltalk.HLPackagesListWidget);
  1245. smalltalk.addMethod(
  1246. "_renderButtonsOn_",
  1247. smalltalk.method({
  1248. selector: "renderButtonsOn:",
  1249. fn: function (html){
  1250. var self=this;
  1251. return smalltalk.withContext(function($ctx1) { var $1,$2,$3,$5,$6,$7,$8,$4,$9,$10;
  1252. $1=_st(html)._span();
  1253. _st($1)._class_("info");
  1254. $2=_st($1)._with_("Auto commit");
  1255. $3=_st(html)._div();
  1256. _st($3)._class_("btn-group switch");
  1257. _st($3)._at_put_("data-toggle","buttons-radio");
  1258. $4=_st($3)._with_((function(){
  1259. return smalltalk.withContext(function($ctx2) { $5=_st(html)._button();
  1260. _st($5)._class_(_st((smalltalk.String || String))._streamContents_((function(str){
  1261. return smalltalk.withContext(function($ctx3) { return _st(str)._nextPutAll_("btn");
  1262. }, function($ctx3) {$ctx3.fillBlock({str:str},$ctx1)})})));
  1263. $6=_st($5)._with_("On");
  1264. $6;
  1265. $7=_st(html)._button();
  1266. _st($7)._class_(_st((smalltalk.String || String))._streamContents_((function(str){
  1267. return smalltalk.withContext(function($ctx3) { return _st(str)._nextPutAll_("btn active");
  1268. }, function($ctx3) {$ctx3.fillBlock({str:str},$ctx1)})})));
  1269. $8=_st($7)._with_("Off");
  1270. return $8;
  1271. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1272. $9=_st(html)._a();
  1273. _st($9)._class_("btn");
  1274. $10=_st($9)._with_("Commit");
  1275. return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html}, smalltalk.HLPackagesListWidget)})},
  1276. messageSends: ["class:", "span", "with:", "div", "at:put:", "streamContents:", "nextPutAll:", "button", "a"]}),
  1277. smalltalk.HLPackagesListWidget);
  1278. smalltalk.addMethod(
  1279. "_selectItem_",
  1280. smalltalk.method({
  1281. selector: "selectItem:",
  1282. fn: function (aPackage){
  1283. var self=this;
  1284. return smalltalk.withContext(function($ctx1) { _st(_st(self)._model())._selectedPackage_(aPackage);
  1285. return self}, function($ctx1) {$ctx1.fill(self,"selectItem:",{aPackage:aPackage}, smalltalk.HLPackagesListWidget)})},
  1286. messageSends: ["selectedPackage:", "model"]}),
  1287. smalltalk.HLPackagesListWidget);
  1288. smalltalk.addClass('HLProtocolsListWidget', smalltalk.HLBrowserListWidget, [], 'Helios-Browser');
  1289. smalltalk.addMethod(
  1290. "_allProtocol",
  1291. smalltalk.method({
  1292. selector: "allProtocol",
  1293. fn: function (){
  1294. var self=this;
  1295. return smalltalk.withContext(function($ctx1) { var $1;
  1296. $1=_st(_st(self)._model())._allProtocol();
  1297. return $1;
  1298. }, function($ctx1) {$ctx1.fill(self,"allProtocol",{}, smalltalk.HLProtocolsListWidget)})},
  1299. messageSends: ["allProtocol", "model"]}),
  1300. smalltalk.HLProtocolsListWidget);
  1301. smalltalk.addMethod(
  1302. "_observeModel",
  1303. smalltalk.method({
  1304. selector: "observeModel",
  1305. fn: function (){
  1306. var self=this;
  1307. return smalltalk.withContext(function($ctx1) { var $1,$2;
  1308. $1=_st(_st(self)._model())._announcer();
  1309. _st($1)._on_do_((smalltalk.HLClassSelected || HLClassSelected),(function(ann){
  1310. return smalltalk.withContext(function($ctx2) { return _st(self)._onClassSelected_(_st(ann)._item());
  1311. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  1312. _st($1)._on_do_((smalltalk.HLShowInstanceToggled || HLShowInstanceToggled),(function(ann){
  1313. return smalltalk.withContext(function($ctx2) { return _st(self)._onClassSelected_(_st(_st(self)._model())._selectedClass());
  1314. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  1315. _st($1)._on_do_((smalltalk.HLProtocolSelected || HLProtocolSelected),(function(ann){
  1316. return smalltalk.withContext(function($ctx2) { return _st(self)._onProtocolSelected_(_st(ann)._item());
  1317. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  1318. $2=_st($1)._on_do_((smalltalk.HLProtocolsFocusRequested || HLProtocolsFocusRequested),(function(ann){
  1319. return smalltalk.withContext(function($ctx2) { return _st(self)._onProtocolsFocusRequested();
  1320. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  1321. return self}, function($ctx1) {$ctx1.fill(self,"observeModel",{}, smalltalk.HLProtocolsListWidget)})},
  1322. messageSends: ["on:do:", "onClassSelected:", "item", "announcer", "model", "selectedClass", "onProtocolSelected:", "onProtocolsFocusRequested"]}),
  1323. smalltalk.HLProtocolsListWidget);
  1324. smalltalk.addMethod(
  1325. "_observeSystem",
  1326. smalltalk.method({
  1327. selector: "observeSystem",
  1328. fn: function (){
  1329. var self=this;
  1330. return smalltalk.withContext(function($ctx1) { var $1,$2;
  1331. $1=_st((smalltalk.SystemAnnouncer || SystemAnnouncer))._current();
  1332. _st($1)._on_do_((smalltalk.ProtocolAdded || ProtocolAdded),(function(ann){
  1333. return smalltalk.withContext(function($ctx2) { return _st(self)._onProtocolAdded_to_(_st(ann)._protocol(),_st(ann)._theClass());
  1334. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  1335. $2=_st($1)._on_do_((smalltalk.ProtocolRemoved || ProtocolRemoved),(function(ann){
  1336. return smalltalk.withContext(function($ctx2) { return _st(self)._onProtocolRemoved_from_(_st(ann)._protocol(),_st(ann)._theClass());
  1337. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  1338. return self}, function($ctx1) {$ctx1.fill(self,"observeSystem",{}, smalltalk.HLProtocolsListWidget)})},
  1339. messageSends: ["on:do:", "onProtocolAdded:to:", "protocol", "theClass", "current", "onProtocolRemoved:from:"]}),
  1340. smalltalk.HLProtocolsListWidget);
  1341. smalltalk.addMethod(
  1342. "_onClassSelected_",
  1343. smalltalk.method({
  1344. selector: "onClassSelected:",
  1345. fn: function (aClass){
  1346. var self=this;
  1347. return smalltalk.withContext(function($ctx1) { _st(self)._selectedItem_(nil);
  1348. _st(self)._setItemsForSelectedClass();
  1349. _st(self)._refresh();
  1350. return self}, function($ctx1) {$ctx1.fill(self,"onClassSelected:",{aClass:aClass}, smalltalk.HLProtocolsListWidget)})},
  1351. messageSends: ["selectedItem:", "setItemsForSelectedClass", "refresh"]}),
  1352. smalltalk.HLProtocolsListWidget);
  1353. smalltalk.addMethod(
  1354. "_onProtocolAdded_to_",
  1355. smalltalk.method({
  1356. selector: "onProtocolAdded:to:",
  1357. fn: function (aString,aClass){
  1358. var self=this;
  1359. return smalltalk.withContext(function($ctx1) { var $1,$2;
  1360. $1=_st(aClass).__eq(_st(_st(self)._model())._selectedClass());
  1361. if(! smalltalk.assert($1)){
  1362. $2=self;
  1363. return $2;
  1364. };
  1365. _st(self)._setItemsForSelectedClass();
  1366. _st(self)._refresh();
  1367. return self}, function($ctx1) {$ctx1.fill(self,"onProtocolAdded:to:",{aString:aString,aClass:aClass}, smalltalk.HLProtocolsListWidget)})},
  1368. messageSends: ["ifFalse:", "=", "selectedClass", "model", "setItemsForSelectedClass", "refresh"]}),
  1369. smalltalk.HLProtocolsListWidget);
  1370. smalltalk.addMethod(
  1371. "_onProtocolRemoved_from_",
  1372. smalltalk.method({
  1373. selector: "onProtocolRemoved:from:",
  1374. fn: function (aString,aClass){
  1375. var self=this;
  1376. return smalltalk.withContext(function($ctx1) { var $1,$2,$3;
  1377. $1=_st(aClass).__eq(_st(_st(self)._model())._selectedClass());
  1378. if(! smalltalk.assert($1)){
  1379. $2=self;
  1380. return $2;
  1381. };
  1382. $3=_st(_st(_st(self)._model())._selectedProtocol()).__eq(aString);
  1383. if(smalltalk.assert($3)){
  1384. _st(self)._selectItem_(nil);
  1385. };
  1386. _st(self)._setItemsForSelectedClass();
  1387. _st(self)._refresh();
  1388. return self}, function($ctx1) {$ctx1.fill(self,"onProtocolRemoved:from:",{aString:aString,aClass:aClass}, smalltalk.HLProtocolsListWidget)})},
  1389. messageSends: ["ifFalse:", "=", "selectedClass", "model", "ifTrue:", "selectItem:", "selectedProtocol", "setItemsForSelectedClass", "refresh"]}),
  1390. smalltalk.HLProtocolsListWidget);
  1391. smalltalk.addMethod(
  1392. "_onProtocolSelected_",
  1393. smalltalk.method({
  1394. selector: "onProtocolSelected:",
  1395. fn: function (aString){
  1396. var self=this;
  1397. return smalltalk.withContext(function($ctx1) { var $1,$2,$3,$4,$5;
  1398. _st(self)._selectedItem_(aString);
  1399. $1=aString;
  1400. if(($receiver = $1) == nil || $receiver == undefined){
  1401. $2=self;
  1402. return $2;
  1403. } else {
  1404. $1;
  1405. };
  1406. $3=_st(self)._hasFocus();
  1407. if(! smalltalk.assert($3)){
  1408. $4=self;
  1409. _st($4)._activateItem_(aString);
  1410. $5=_st($4)._focus();
  1411. $5;
  1412. };
  1413. return self}, function($ctx1) {$ctx1.fill(self,"onProtocolSelected:",{aString:aString},smalltalk.HLProtocolsListWidget)})},
  1414. messageSends: ["selectedItem:", "ifNil:", "ifFalse:", "activateItem:", "focus", "hasFocus"]}),
  1415. smalltalk.HLProtocolsListWidget);
  1416. smalltalk.addMethod(
  1417. "_onProtocolsFocusRequested",
  1418. smalltalk.method({
  1419. selector: "onProtocolsFocusRequested",
  1420. fn: function (){
  1421. var self=this;
  1422. return smalltalk.withContext(function($ctx1) { _st(self)._focus();
  1423. return self}, function($ctx1) {$ctx1.fill(self,"onProtocolsFocusRequested",{}, smalltalk.HLProtocolsListWidget)})},
  1424. messageSends: ["focus"]}),
  1425. smalltalk.HLProtocolsListWidget);
  1426. smalltalk.addMethod(
  1427. "_renderContentOn_",
  1428. smalltalk.method({
  1429. selector: "renderContentOn:",
  1430. fn: function (html){
  1431. var self=this;
  1432. return smalltalk.withContext(function($ctx1) { var $1,$2,$3;
  1433. $1=_st(_st(self)._model())._showInstance();
  1434. if(smalltalk.assert($1)){
  1435. smalltalk.HLBrowserListWidget.fn.prototype._renderContentOn_.apply(_st(self), [html]);
  1436. } else {
  1437. $2=_st(html)._div();
  1438. _st($2)._class_("class_side");
  1439. $3=_st($2)._with_((function(){
  1440. return smalltalk.withContext(function($ctx2) { return smalltalk.HLBrowserListWidget.fn.prototype._renderContentOn_.apply(_st(self), [html]);
  1441. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1442. $3;
  1443. };
  1444. return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html}, smalltalk.HLProtocolsListWidget)})},
  1445. messageSends: ["ifFalse:ifTrue:", "class:", "div", "with:", "renderContentOn:", "showInstance", "model"]}),
  1446. smalltalk.HLProtocolsListWidget);
  1447. smalltalk.addMethod(
  1448. "_selectItem_",
  1449. smalltalk.method({
  1450. selector: "selectItem:",
  1451. fn: function (aString){
  1452. var self=this;
  1453. return smalltalk.withContext(function($ctx1) { _st(_st(self)._model())._selectedProtocol_(aString);
  1454. return self}, function($ctx1) {$ctx1.fill(self,"selectItem:",{aString:aString}, smalltalk.HLProtocolsListWidget)})},
  1455. messageSends: ["selectedProtocol:", "model"]}),
  1456. smalltalk.HLProtocolsListWidget);
  1457. smalltalk.addMethod(
  1458. "_selectedItem",
  1459. smalltalk.method({
  1460. selector: "selectedItem",
  1461. fn: function (){
  1462. var self=this;
  1463. return smalltalk.withContext(function($ctx1) { var $1;
  1464. $1=smalltalk.HLBrowserListWidget.fn.prototype._selectedItem.apply(_st(self), []);
  1465. return $1;
  1466. }, function($ctx1) {$ctx1.fill(self,"selectedItem",{}, smalltalk.HLProtocolsListWidget)})},
  1467. messageSends: ["selectedItem"]}),
  1468. smalltalk.HLProtocolsListWidget);
  1469. smalltalk.addMethod(
  1470. "_setItemsForClass_",
  1471. smalltalk.method({
  1472. selector: "setItemsForClass:",
  1473. fn: function (aClass){
  1474. var self=this;
  1475. return smalltalk.withContext(function($ctx1) { var $1,$3,$4,$5,$2;
  1476. $1=self;
  1477. $3=aClass;
  1478. if(($receiver = $3) == nil || $receiver == undefined){
  1479. $2=_st((smalltalk.Array || Array))._with_(_st(self)._allProtocol());
  1480. } else {
  1481. $4=_st((smalltalk.Array || Array))._with_(_st(self)._allProtocol());
  1482. _st($4)._addAll_(_st(aClass)._protocols());
  1483. $5=_st($4)._yourself();
  1484. $2=$5;
  1485. };
  1486. _st($1)._items_($2);
  1487. return self}, function($ctx1) {$ctx1.fill(self,"setItemsForClass:",{aClass:aClass}, smalltalk.HLProtocolsListWidget)})},
  1488. messageSends: ["items:", "ifNil:ifNotNil:", "with:", "allProtocol", "addAll:", "protocols", "yourself"]}),
  1489. smalltalk.HLProtocolsListWidget);
  1490. smalltalk.addMethod(
  1491. "_setItemsForSelectedClass",
  1492. smalltalk.method({
  1493. selector: "setItemsForSelectedClass",
  1494. fn: function (){
  1495. var self=this;
  1496. return smalltalk.withContext(function($ctx1) { _st(self)._setItemsForClass_(_st(_st(self)._model())._selectedClass());
  1497. return self}, function($ctx1) {$ctx1.fill(self,"setItemsForSelectedClass",{}, smalltalk.HLProtocolsListWidget)})},
  1498. messageSends: ["setItemsForClass:", "selectedClass", "model"]}),
  1499. smalltalk.HLProtocolsListWidget);
  1500. smalltalk.addClass('HLBrowserModel', smalltalk.Object, ['announcer', 'environment', 'selectedPackage', 'selectedClass', 'selectedProtocol', 'selectedSelector', 'showInstance', 'showComment'], 'Helios-Browser');
  1501. smalltalk.addMethod(
  1502. "_addInstVarNamed_",
  1503. smalltalk.method({
  1504. selector: "addInstVarNamed:",
  1505. fn: function (aString){
  1506. var self=this;
  1507. return smalltalk.withContext(function($ctx1) { var $1,$2;
  1508. _st(_st(self)._environment())._addInstVarNamed_to_(aString,_st(self)._selectedClass());
  1509. $1=_st((smalltalk.HLInstVarAdded || HLInstVarAdded))._new();
  1510. _st($1)._theClass_(_st(self)._selectedClass());
  1511. _st($1)._variableName_(aString);
  1512. $2=_st($1)._yourself();
  1513. _st(_st(self)._announcer())._announce_($2);
  1514. return self}, function($ctx1) {$ctx1.fill(self,"addInstVarNamed:",{aString:aString}, smalltalk.HLBrowserModel)})},
  1515. messageSends: ["addInstVarNamed:to:", "selectedClass", "environment", "announce:", "theClass:", "new", "variableName:", "yourself", "announcer"]}),
  1516. smalltalk.HLBrowserModel);
  1517. smalltalk.addMethod(
  1518. "_allProtocol",
  1519. smalltalk.method({
  1520. selector: "allProtocol",
  1521. fn: function (){
  1522. var self=this;
  1523. return smalltalk.withContext(function($ctx1) { return "-- all --";
  1524. }, function($ctx1) {$ctx1.fill(self,"allProtocol",{}, smalltalk.HLBrowserModel)})},
  1525. messageSends: []}),
  1526. smalltalk.HLBrowserModel);
  1527. smalltalk.addMethod(
  1528. "_announcer",
  1529. smalltalk.method({
  1530. selector: "announcer",
  1531. fn: function (){
  1532. var self=this;
  1533. return smalltalk.withContext(function($ctx1) { var $2,$1;
  1534. $2=self["@announcer"];
  1535. if(($receiver = $2) == nil || $receiver == undefined){
  1536. self["@announcer"]=_st((smalltalk.Announcer || Announcer))._new();
  1537. $1=self["@announcer"];
  1538. } else {
  1539. $1=$2;
  1540. };
  1541. return $1;
  1542. }, function($ctx1) {$ctx1.fill(self,"announcer",{}, smalltalk.HLBrowserModel)})},
  1543. messageSends: ["ifNil:", "new"]}),
  1544. smalltalk.HLBrowserModel);
  1545. smalltalk.addMethod(
  1546. "_availableClassNames",
  1547. smalltalk.method({
  1548. selector: "availableClassNames",
  1549. fn: function (){
  1550. var self=this;
  1551. return smalltalk.withContext(function($ctx1) { var $1;
  1552. $1=_st(_st(self)._environment())._availableClassNames();
  1553. return $1;
  1554. }, function($ctx1) {$ctx1.fill(self,"availableClassNames",{},smalltalk.HLBrowserModel)})},
  1555. messageSends: ["availableClassNames", "environment"]}),
  1556. smalltalk.HLBrowserModel);
  1557. smalltalk.addMethod(
  1558. "_availableProtocols",
  1559. smalltalk.method({
  1560. selector: "availableProtocols",
  1561. fn: function (){
  1562. var self=this;
  1563. return smalltalk.withContext(function($ctx1) { var $1;
  1564. $1=_st(_st(self)._environment())._availableProtocolsFor_(_st(self)._selectedClass());
  1565. return $1;
  1566. }, function($ctx1) {$ctx1.fill(self,"availableProtocols",{},smalltalk.HLBrowserModel)})},
  1567. messageSends: ["availableProtocolsFor:", "selectedClass", "environment"]}),
  1568. smalltalk.HLBrowserModel);
  1569. smalltalk.addMethod(
  1570. "_commitPackage",
  1571. smalltalk.method({
  1572. selector: "commitPackage",
  1573. fn: function (){
  1574. var self=this;
  1575. return smalltalk.withContext(function($ctx1) { _st(_st(self)._environment())._commitPackage_(_st(self)._selectedPackage());
  1576. return self}, function($ctx1) {$ctx1.fill(self,"commitPackage",{},smalltalk.HLBrowserModel)})},
  1577. messageSends: ["commitPackage:", "selectedPackage", "environment"]}),
  1578. smalltalk.HLBrowserModel);
  1579. smalltalk.addMethod(
  1580. "_compilationProtocol",
  1581. smalltalk.method({
  1582. selector: "compilationProtocol",
  1583. fn: function (){
  1584. var self=this;
  1585. var currentProtocol;
  1586. return smalltalk.withContext(function($ctx1) { var $1,$2,$4,$3;
  1587. currentProtocol=_st(self)._selectedProtocol();
  1588. $1=currentProtocol;
  1589. if(($receiver = $1) == nil || $receiver == undefined){
  1590. currentProtocol=_st(self)._unclassifiedProtocol();
  1591. currentProtocol;
  1592. } else {
  1593. $1;
  1594. };
  1595. $2=_st(self)._selectedMethod();
  1596. if(($receiver = $2) == nil || $receiver == undefined){
  1597. $2;
  1598. } else {
  1599. currentProtocol=_st(_st(self)._selectedMethod())._protocol();
  1600. currentProtocol;
  1601. };
  1602. $4=_st(currentProtocol).__eq(_st(self)._allProtocol());
  1603. if(smalltalk.assert($4)){
  1604. $3=_st(self)._unclassifiedProtocol();
  1605. } else {
  1606. $3=currentProtocol;
  1607. };
  1608. return $3;
  1609. }, function($ctx1) {$ctx1.fill(self,"compilationProtocol",{currentProtocol:currentProtocol},smalltalk.HLBrowserModel)})},
  1610. messageSends: ["selectedProtocol", "ifNil:", "unclassifiedProtocol", "ifNotNil:", "protocol", "selectedMethod", "ifTrue:ifFalse:", "=", "allProtocol"]}),
  1611. smalltalk.HLBrowserModel);
  1612. smalltalk.addMethod(
  1613. "_compileClassComment_",
  1614. smalltalk.method({
  1615. selector: "compileClassComment:",
  1616. fn: function (aString){
  1617. var self=this;
  1618. return smalltalk.withContext(function($ctx1) { _st(_st(self)._environment())._compileClassComment_for_(aString,_st(self)._selectedClass());
  1619. return self}, function($ctx1) {$ctx1.fill(self,"compileClassComment:",{aString:aString}, smalltalk.HLBrowserModel)})},
  1620. messageSends: ["compileClassComment:for:", "selectedClass", "environment"]}),
  1621. smalltalk.HLBrowserModel);
  1622. smalltalk.addMethod(
  1623. "_compileClassDefinition_",
  1624. smalltalk.method({
  1625. selector: "compileClassDefinition:",
  1626. fn: function (aString){
  1627. var self=this;
  1628. return smalltalk.withContext(function($ctx1) { _st(_st(self)._environment())._compileClassDefinition_(aString);
  1629. return self}, function($ctx1) {$ctx1.fill(self,"compileClassDefinition:",{aString:aString}, smalltalk.HLBrowserModel)})},
  1630. messageSends: ["compileClassDefinition:", "environment"]}),
  1631. smalltalk.HLBrowserModel);
  1632. smalltalk.addMethod(
  1633. "_compileMethod_",
  1634. smalltalk.method({
  1635. selector: "compileMethod:",
  1636. fn: function (aString){
  1637. var self=this;
  1638. return smalltalk.withContext(function($ctx1) { _st(self)._withCompileErrorHandling_((function(){
  1639. return smalltalk.withContext(function($ctx2) { return _st(_st(self)._environment())._compileMethod_for_protocol_(aString,_st(self)._selectedClass(),_st(self)._compilationProtocol());
  1640. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1641. return self}, function($ctx1) {$ctx1.fill(self,"compileMethod:",{aString:aString}, smalltalk.HLBrowserModel)})},
  1642. messageSends: ["withCompileErrorHandling:", "compileMethod:for:protocol:", "selectedClass", "compilationProtocol", "environment"]}),
  1643. smalltalk.HLBrowserModel);
  1644. smalltalk.addMethod(
  1645. "_environment",
  1646. smalltalk.method({
  1647. selector: "environment",
  1648. fn: function (){
  1649. var self=this;
  1650. return smalltalk.withContext(function($ctx1) { var $2,$1;
  1651. $2=self["@environment"];
  1652. if(($receiver = $2) == nil || $receiver == undefined){
  1653. $1=_st(_st((smalltalk.HLManager || HLManager))._current())._environment();
  1654. } else {
  1655. $1=$2;
  1656. };
  1657. return $1;
  1658. }, function($ctx1) {$ctx1.fill(self,"environment",{}, smalltalk.HLBrowserModel)})},
  1659. messageSends: ["ifNil:", "environment", "current"]}),
  1660. smalltalk.HLBrowserModel);
  1661. smalltalk.addMethod(
  1662. "_environment_",
  1663. smalltalk.method({
  1664. selector: "environment:",
  1665. fn: function (anEnvironment){
  1666. var self=this;
  1667. return smalltalk.withContext(function($ctx1) { self["@environment"]=anEnvironment;
  1668. return self}, function($ctx1) {$ctx1.fill(self,"environment:",{anEnvironment:anEnvironment}, smalltalk.HLBrowserModel)})},
  1669. messageSends: []}),
  1670. smalltalk.HLBrowserModel);
  1671. smalltalk.addMethod(
  1672. "_focusOnClasses",
  1673. smalltalk.method({
  1674. selector: "focusOnClasses",
  1675. fn: function (){
  1676. var self=this;
  1677. return smalltalk.withContext(function($ctx1) { _st(_st(self)._announcer())._announce_(_st((smalltalk.HLClassesFocusRequested || HLClassesFocusRequested))._new());
  1678. return self}, function($ctx1) {$ctx1.fill(self,"focusOnClasses",{}, smalltalk.HLBrowserModel)})},
  1679. messageSends: ["announce:", "new", "announcer"]}),
  1680. smalltalk.HLBrowserModel);
  1681. smalltalk.addMethod(
  1682. "_focusOnMethods",
  1683. smalltalk.method({
  1684. selector: "focusOnMethods",
  1685. fn: function (){
  1686. var self=this;
  1687. return smalltalk.withContext(function($ctx1) { _st(_st(self)._announcer())._announce_(_st((smalltalk.HLMethodsFocusRequested || HLMethodsFocusRequested))._new());
  1688. return self}, function($ctx1) {$ctx1.fill(self,"focusOnMethods",{}, smalltalk.HLBrowserModel)})},
  1689. messageSends: ["announce:", "new", "announcer"]}),
  1690. smalltalk.HLBrowserModel);
  1691. smalltalk.addMethod(
  1692. "_focusOnPackages",
  1693. smalltalk.method({
  1694. selector: "focusOnPackages",
  1695. fn: function (){
  1696. var self=this;
  1697. return smalltalk.withContext(function($ctx1) { _st(_st(self)._announcer())._announce_(_st((smalltalk.HLPackagesFocusRequested || HLPackagesFocusRequested))._new());
  1698. return self}, function($ctx1) {$ctx1.fill(self,"focusOnPackages",{}, smalltalk.HLBrowserModel)})},
  1699. messageSends: ["announce:", "new", "announcer"]}),
  1700. smalltalk.HLBrowserModel);
  1701. smalltalk.addMethod(
  1702. "_focusOnProtocols",
  1703. smalltalk.method({
  1704. selector: "focusOnProtocols",
  1705. fn: function (){
  1706. var self=this;
  1707. return smalltalk.withContext(function($ctx1) { _st(_st(self)._announcer())._announce_(_st((smalltalk.HLProtocolsFocusRequested || HLProtocolsFocusRequested))._new());
  1708. return self}, function($ctx1) {$ctx1.fill(self,"focusOnProtocols",{}, smalltalk.HLBrowserModel)})},
  1709. messageSends: ["announce:", "new", "announcer"]}),
  1710. smalltalk.HLBrowserModel);
  1711. smalltalk.addMethod(
  1712. "_focusOnSourceCode",
  1713. smalltalk.method({
  1714. selector: "focusOnSourceCode",
  1715. fn: function (){
  1716. var self=this;
  1717. return smalltalk.withContext(function($ctx1) { _st(_st(self)._announcer())._announce_(_st((smalltalk.HLSourceCodeFocusRequested || HLSourceCodeFocusRequested))._new());
  1718. return self}, function($ctx1) {$ctx1.fill(self,"focusOnSourceCode",{}, smalltalk.HLBrowserModel)})},
  1719. messageSends: ["announce:", "new", "announcer"]}),
  1720. smalltalk.HLBrowserModel);
  1721. smalltalk.addMethod(
  1722. "_handleCompileError_",
  1723. smalltalk.method({
  1724. selector: "handleCompileError:",
  1725. fn: function (anError){
  1726. var self=this;
  1727. return smalltalk.withContext(function($ctx1) { var $1,$2;
  1728. $1=_st((smalltalk.HLCompileErrorRaised || HLCompileErrorRaised))._new();
  1729. _st($1)._error_(anError);
  1730. $2=_st($1)._yourself();
  1731. _st(_st(self)._announcer())._announce_($2);
  1732. return self}, function($ctx1) {$ctx1.fill(self,"handleCompileError:",{anError:anError}, smalltalk.HLBrowserModel)})},
  1733. messageSends: ["announce:", "error:", "new", "yourself", "announcer"]}),
  1734. smalltalk.HLBrowserModel);
  1735. smalltalk.addMethod(
  1736. "_handleParseError_",
  1737. smalltalk.method({
  1738. selector: "handleParseError:",
  1739. fn: function (anError){
  1740. var self=this;
  1741. var split,line,column,messageToInsert;
  1742. return smalltalk.withContext(function($ctx1) { var $1,$2;
  1743. split=_st(_st(anError)._messageText())._tokenize_(" : ");
  1744. messageToInsert=_st(split)._second();
  1745. split=_st(_st(split)._first())._copyFrom_to_((21),_st(_st(split)._first())._size());
  1746. split=_st(split)._tokenize_(" column ");
  1747. line=_st(split)._first();
  1748. column=_st(split)._second();
  1749. $1=_st((smalltalk.HLParseErrorRaised || HLParseErrorRaised))._new();
  1750. _st($1)._line_(_st(line)._asNumber());
  1751. _st($1)._column_(_st(column)._asNumber());
  1752. _st($1)._message_(messageToInsert);
  1753. _st($1)._error_(anError);
  1754. $2=_st($1)._yourself();
  1755. _st(_st(self)._announcer())._announce_($2);
  1756. return self}, function($ctx1) {$ctx1.fill(self,"handleParseError:",{anError:anError,split:split,line:line,column:column,messageToInsert:messageToInsert}, smalltalk.HLBrowserModel)})},
  1757. messageSends: ["tokenize:", "messageText", "second", "copyFrom:to:", "size", "first", "announce:", "line:", "asNumber", "new", "column:", "message:", "error:", "yourself", "announcer"]}),
  1758. smalltalk.HLBrowserModel);
  1759. smalltalk.addMethod(
  1760. "_handleUnkownVariableError_",
  1761. smalltalk.method({
  1762. selector: "handleUnkownVariableError:",
  1763. fn: function (anError){
  1764. var self=this;
  1765. return smalltalk.withContext(function($ctx1) { var $1,$2;
  1766. $1=_st((smalltalk.HLUnknownVariableErrorRaised || HLUnknownVariableErrorRaised))._new();
  1767. _st($1)._error_(anError);
  1768. $2=_st($1)._yourself();
  1769. _st(_st(self)._announcer())._announce_($2);
  1770. return self}, function($ctx1) {$ctx1.fill(self,"handleUnkownVariableError:",{anError:anError}, smalltalk.HLBrowserModel)})},
  1771. messageSends: ["announce:", "error:", "new", "yourself", "announcer"]}),
  1772. smalltalk.HLBrowserModel);
  1773. smalltalk.addMethod(
  1774. "_manager",
  1775. smalltalk.method({
  1776. selector: "manager",
  1777. fn: function (){
  1778. var self=this;
  1779. return smalltalk.withContext(function($ctx1) { var $1;
  1780. $1=_st((smalltalk.HLManager || HLManager))._current();
  1781. return $1;
  1782. }, function($ctx1) {$ctx1.fill(self,"manager",{},smalltalk.HLBrowserModel)})},
  1783. messageSends: ["current"]}),
  1784. smalltalk.HLBrowserModel);
  1785. smalltalk.addMethod(
  1786. "_moveMethodToClass_",
  1787. smalltalk.method({
  1788. selector: "moveMethodToClass:",
  1789. fn: function (aClassName){
  1790. var self=this;
  1791. return smalltalk.withContext(function($ctx1) { _st(_st(self)._environment())._moveMethod_toClass_(_st(self)._selectedMethod(),aClassName);
  1792. return self}, function($ctx1) {$ctx1.fill(self,"moveMethodToClass:",{aClassName:aClassName},smalltalk.HLBrowserModel)})},
  1793. messageSends: ["moveMethod:toClass:", "selectedMethod", "environment"]}),
  1794. smalltalk.HLBrowserModel);
  1795. smalltalk.addMethod(
  1796. "_moveMethodToProtocol_",
  1797. smalltalk.method({
  1798. selector: "moveMethodToProtocol:",
  1799. fn: function (aProtocol){
  1800. var self=this;
  1801. return smalltalk.withContext(function($ctx1) { _st(_st(self)._environment())._moveMethod_toProtocol_(_st(self)._selectedMethod(),aProtocol);
  1802. return self}, function($ctx1) {$ctx1.fill(self,"moveMethodToProtocol:",{aProtocol:aProtocol},smalltalk.HLBrowserModel)})},
  1803. messageSends: ["moveMethod:toProtocol:", "selectedMethod", "environment"]}),
  1804. smalltalk.HLBrowserModel);
  1805. smalltalk.addMethod(
  1806. "_openClassNamed_",
  1807. smalltalk.method({
  1808. selector: "openClassNamed:",
  1809. fn: function (aString){
  1810. var self=this;
  1811. var class_;
  1812. return smalltalk.withContext(function($ctx1) { class_=_st(_st(self)._environment())._classNamed_(aString);
  1813. _st(self)._selectedPackage_(_st(class_)._package());
  1814. _st(self)._selectedClass_(class_);
  1815. return self}, function($ctx1) {$ctx1.fill(self,"openClassNamed:",{aString:aString,class_:class_},smalltalk.HLBrowserModel)})},
  1816. messageSends: ["classNamed:", "environment", "selectedPackage:", "package", "selectedClass:"]}),
  1817. smalltalk.HLBrowserModel);
  1818. smalltalk.addMethod(
  1819. "_packages",
  1820. smalltalk.method({
  1821. selector: "packages",
  1822. fn: function (){
  1823. var self=this;
  1824. return smalltalk.withContext(function($ctx1) { var $1;
  1825. $1=_st(_st(self)._environment())._packages();
  1826. return $1;
  1827. }, function($ctx1) {$ctx1.fill(self,"packages",{}, smalltalk.HLBrowserModel)})},
  1828. messageSends: ["packages", "environment"]}),
  1829. smalltalk.HLBrowserModel);
  1830. smalltalk.addMethod(
  1831. "_removeMethod",
  1832. smalltalk.method({
  1833. selector: "removeMethod",
  1834. fn: function (){
  1835. var self=this;
  1836. return smalltalk.withContext(function($ctx1) { var $1;
  1837. $1=_st(_st(self)._manager())._confirm_(_st(_st(_st("Do you REALLY want to remove method ").__comma(_st(_st(_st(self)._selectedMethod())._methodClass())._name())).__comma(" >> #")).__comma(_st(_st(self)._selectedMethod())._selector()));
  1838. if(smalltalk.assert($1)){
  1839. _st(_st(self)._environment())._removeMethod_(_st(self)._selectedMethod());
  1840. };
  1841. return self}, function($ctx1) {$ctx1.fill(self,"removeMethod",{},smalltalk.HLBrowserModel)})},
  1842. messageSends: ["ifTrue:", "removeMethod:", "selectedMethod", "environment", "confirm:", ",", "selector", "name", "methodClass", "manager"]}),
  1843. smalltalk.HLBrowserModel);
  1844. smalltalk.addMethod(
  1845. "_save_",
  1846. smalltalk.method({
  1847. selector: "save:",
  1848. fn: function (aString){
  1849. var self=this;
  1850. return smalltalk.withContext(function($ctx1) { var $1;
  1851. $1=_st(self)._shouldCompileClassDefinition_(aString);
  1852. if(smalltalk.assert($1)){
  1853. _st(self)._compileClassDefinition_(aString);
  1854. } else {
  1855. _st(self)._compileMethod_(aString);
  1856. };
  1857. return self}, function($ctx1) {$ctx1.fill(self,"save:",{aString:aString},smalltalk.HLBrowserModel)})},
  1858. messageSends: ["ifTrue:ifFalse:", "compileClassDefinition:", "compileMethod:", "shouldCompileClassDefinition:"]}),
  1859. smalltalk.HLBrowserModel);
  1860. smalltalk.addMethod(
  1861. "_saveSourceCode",
  1862. smalltalk.method({
  1863. selector: "saveSourceCode",
  1864. fn: function (){
  1865. var self=this;
  1866. return smalltalk.withContext(function($ctx1) { _st(_st(self)._announcer())._announce_(_st((smalltalk.HLSaveSourceCode || HLSaveSourceCode))._new());
  1867. return self}, function($ctx1) {$ctx1.fill(self,"saveSourceCode",{}, smalltalk.HLBrowserModel)})},
  1868. messageSends: ["announce:", "new", "announcer"]}),
  1869. smalltalk.HLBrowserModel);
  1870. smalltalk.addMethod(
  1871. "_selectedClass",
  1872. smalltalk.method({
  1873. selector: "selectedClass",
  1874. fn: function (){
  1875. var self=this;
  1876. return smalltalk.withContext(function($ctx1) { var $1;
  1877. $1=self["@selectedClass"];
  1878. return $1;
  1879. }, function($ctx1) {$ctx1.fill(self,"selectedClass",{}, smalltalk.HLBrowserModel)})},
  1880. messageSends: []}),
  1881. smalltalk.HLBrowserModel);
  1882. smalltalk.addMethod(
  1883. "_selectedClass_",
  1884. smalltalk.method({
  1885. selector: "selectedClass:",
  1886. fn: function (aClass){
  1887. var self=this;
  1888. return smalltalk.withContext(function($ctx1) { var $1,$2,$3,$4,$5;
  1889. $1=_st(self["@selectedClass"]).__eq(aClass);
  1890. if(smalltalk.assert($1)){
  1891. $2=aClass;
  1892. if(($receiver = $2) == nil || $receiver == undefined){
  1893. $3=self;
  1894. return $3;
  1895. } else {
  1896. $2;
  1897. };
  1898. _st(self)._selectedProtocol_(nil);
  1899. };
  1900. $4=aClass;
  1901. if(($receiver = $4) == nil || $receiver == undefined){
  1902. self["@selectedClass"]=nil;
  1903. self["@selectedClass"];
  1904. } else {
  1905. $5=_st(self)._showInstance();
  1906. if(smalltalk.assert($5)){
  1907. self["@selectedClass"]=_st(aClass)._theNonMetaClass();
  1908. self["@selectedClass"];
  1909. } else {
  1910. self["@selectedClass"]=_st(aClass)._theMetaClass();
  1911. self["@selectedClass"];
  1912. };
  1913. };
  1914. _st(self)._selectedProtocol_(nil);
  1915. _st(_st(self)._announcer())._announce_(_st((smalltalk.HLClassSelected || HLClassSelected))._on_(_st(self)._selectedClass()));
  1916. return self}, function($ctx1) {$ctx1.fill(self,"selectedClass:",{aClass:aClass}, smalltalk.HLBrowserModel)})},
  1917. messageSends: ["ifTrue:", "ifNil:", "selectedProtocol:", "=", "ifNil:ifNotNil:", "ifTrue:ifFalse:", "theNonMetaClass", "theMetaClass", "showInstance", "announce:", "on:", "selectedClass", "announcer"]}),
  1918. smalltalk.HLBrowserModel);
  1919. smalltalk.addMethod(
  1920. "_selectedMethod",
  1921. smalltalk.method({
  1922. selector: "selectedMethod",
  1923. fn: function (){
  1924. var self=this;
  1925. return smalltalk.withContext(function($ctx1) { var $2,$1;
  1926. $2=_st(self)._selectedClass();
  1927. if(($receiver = $2) == nil || $receiver == undefined){
  1928. $1=$2;
  1929. } else {
  1930. $1=_st(_st(_st(self)._selectedClass())._methodDictionary())._at_ifAbsent_(self["@selectedSelector"],(function(){
  1931. return smalltalk.withContext(function($ctx2) { return nil;
  1932. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1933. };
  1934. return $1;
  1935. }, function($ctx1) {$ctx1.fill(self,"selectedMethod",{},smalltalk.HLBrowserModel)})},
  1936. messageSends: ["ifNotNil:", "at:ifAbsent:", "methodDictionary", "selectedClass"]}),
  1937. smalltalk.HLBrowserModel);
  1938. smalltalk.addMethod(
  1939. "_selectedMethod_",
  1940. smalltalk.method({
  1941. selector: "selectedMethod:",
  1942. fn: function (aCompiledMethod){
  1943. var self=this;
  1944. return smalltalk.withContext(function($ctx1) { var $1,$2,$3,$4,$5;
  1945. $1=_st(self["@selectedSelector"]).__eq(aCompiledMethod);
  1946. if(smalltalk.assert($1)){
  1947. $2=self;
  1948. return $2;
  1949. };
  1950. $3=aCompiledMethod;
  1951. if(($receiver = $3) == nil || $receiver == undefined){
  1952. self["@selectedSelector"]=nil;
  1953. self["@selectedSelector"];
  1954. } else {
  1955. $4=_st(self["@selectedSelector"]).__eq(_st(aCompiledMethod)._selector());
  1956. if(smalltalk.assert($4)){
  1957. $5=self;
  1958. return $5;
  1959. };
  1960. self["@selectedSelector"]=_st(aCompiledMethod)._selector();
  1961. self["@selectedSelector"];
  1962. };
  1963. _st(_st(self)._announcer())._announce_(_st((smalltalk.HLMethodSelected || HLMethodSelected))._on_(aCompiledMethod));
  1964. return self}, function($ctx1) {$ctx1.fill(self,"selectedMethod:",{aCompiledMethod:aCompiledMethod}, smalltalk.HLBrowserModel)})},
  1965. messageSends: ["ifTrue:", "=", "ifNil:ifNotNil:", "selector", "announce:", "on:", "announcer"]}),
  1966. smalltalk.HLBrowserModel);
  1967. smalltalk.addMethod(
  1968. "_selectedPackage",
  1969. smalltalk.method({
  1970. selector: "selectedPackage",
  1971. fn: function (){
  1972. var self=this;
  1973. return smalltalk.withContext(function($ctx1) { var $1;
  1974. $1=self["@selectedPackage"];
  1975. return $1;
  1976. }, function($ctx1) {$ctx1.fill(self,"selectedPackage",{}, smalltalk.HLBrowserModel)})},
  1977. messageSends: []}),
  1978. smalltalk.HLBrowserModel);
  1979. smalltalk.addMethod(
  1980. "_selectedPackage_",
  1981. smalltalk.method({
  1982. selector: "selectedPackage:",
  1983. fn: function (aPackage){
  1984. var self=this;
  1985. return smalltalk.withContext(function($ctx1) { var $1,$2;
  1986. $1=_st(self["@selectedPackage"]).__eq(aPackage);
  1987. if(smalltalk.assert($1)){
  1988. $2=self;
  1989. return $2;
  1990. };
  1991. self["@selectedPackage"]=aPackage;
  1992. _st(self)._selectedClass_(nil);
  1993. _st(_st(self)._announcer())._announce_(_st((smalltalk.HLPackageSelected || HLPackageSelected))._on_(aPackage));
  1994. return self}, function($ctx1) {$ctx1.fill(self,"selectedPackage:",{aPackage:aPackage}, smalltalk.HLBrowserModel)})},
  1995. messageSends: ["ifTrue:", "=", "selectedClass:", "announce:", "on:", "announcer"]}),
  1996. smalltalk.HLBrowserModel);
  1997. smalltalk.addMethod(
  1998. "_selectedProtocol",
  1999. smalltalk.method({
  2000. selector: "selectedProtocol",
  2001. fn: function (){
  2002. var self=this;
  2003. return smalltalk.withContext(function($ctx1) { var $1;
  2004. $1=self["@selectedProtocol"];
  2005. return $1;
  2006. }, function($ctx1) {$ctx1.fill(self,"selectedProtocol",{}, smalltalk.HLBrowserModel)})},
  2007. messageSends: []}),
  2008. smalltalk.HLBrowserModel);
  2009. smalltalk.addMethod(
  2010. "_selectedProtocol_",
  2011. smalltalk.method({
  2012. selector: "selectedProtocol:",
  2013. fn: function (aString){
  2014. var self=this;
  2015. return smalltalk.withContext(function($ctx1) { var $1,$2;
  2016. $1=_st(self["@selectedProtocol"]).__eq(aString);
  2017. if(smalltalk.assert($1)){
  2018. $2=self;
  2019. return $2;
  2020. };
  2021. self["@selectedProtocol"]=aString;
  2022. _st(self)._selectedMethod_(nil);
  2023. _st(_st(self)._announcer())._announce_(_st((smalltalk.HLProtocolSelected || HLProtocolSelected))._on_(aString));
  2024. return self}, function($ctx1) {$ctx1.fill(self,"selectedProtocol:",{aString:aString}, smalltalk.HLBrowserModel)})},
  2025. messageSends: ["ifTrue:", "=", "selectedMethod:", "announce:", "on:", "announcer"]}),
  2026. smalltalk.HLBrowserModel);
  2027. smalltalk.addMethod(
  2028. "_shouldCompileClassDefinition_",
  2029. smalltalk.method({
  2030. selector: "shouldCompileClassDefinition:",
  2031. fn: function (aString){
  2032. var self=this;
  2033. return smalltalk.withContext(function($ctx1) { var $1;
  2034. $1=_st(_st(_st(self)._selectedClass())._isNil())._or_((function(){
  2035. return smalltalk.withContext(function($ctx2) { return _st(_st(_st(aString)._first())._asUppercase()).__eq(_st(aString)._first());
  2036. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2037. return $1;
  2038. }, function($ctx1) {$ctx1.fill(self,"shouldCompileClassDefinition:",{aString:aString},smalltalk.HLBrowserModel)})},
  2039. messageSends: ["or:", "=", "first", "asUppercase", "isNil", "selectedClass"]}),
  2040. smalltalk.HLBrowserModel);
  2041. smalltalk.addMethod(
  2042. "_showComment",
  2043. smalltalk.method({
  2044. selector: "showComment",
  2045. fn: function (){
  2046. var self=this;
  2047. return smalltalk.withContext(function($ctx1) { var $2,$1;
  2048. $2=self["@showComment"];
  2049. if(($receiver = $2) == nil || $receiver == undefined){
  2050. $1=false;
  2051. } else {
  2052. $1=$2;
  2053. };
  2054. return $1;
  2055. }, function($ctx1) {$ctx1.fill(self,"showComment",{}, smalltalk.HLBrowserModel)})},
  2056. messageSends: ["ifNil:"]}),
  2057. smalltalk.HLBrowserModel);
  2058. smalltalk.addMethod(
  2059. "_showComment_",
  2060. smalltalk.method({
  2061. selector: "showComment:",
  2062. fn: function (aBoolean){
  2063. var self=this;
  2064. return smalltalk.withContext(function($ctx1) { self["@showComment"]=aBoolean;
  2065. _st(_st(self)._announcer())._announce_(_st((smalltalk.HLShowCommentToggled || HLShowCommentToggled))._new());
  2066. return self}, function($ctx1) {$ctx1.fill(self,"showComment:",{aBoolean:aBoolean}, smalltalk.HLBrowserModel)})},
  2067. messageSends: ["announce:", "new", "announcer"]}),
  2068. smalltalk.HLBrowserModel);
  2069. smalltalk.addMethod(
  2070. "_showInstance",
  2071. smalltalk.method({
  2072. selector: "showInstance",
  2073. fn: function (){
  2074. var self=this;
  2075. return smalltalk.withContext(function($ctx1) { var $2,$1;
  2076. $2=self["@showInstance"];
  2077. if(($receiver = $2) == nil || $receiver == undefined){
  2078. $1=true;
  2079. } else {
  2080. $1=$2;
  2081. };
  2082. return $1;
  2083. }, function($ctx1) {$ctx1.fill(self,"showInstance",{}, smalltalk.HLBrowserModel)})},
  2084. messageSends: ["ifNil:"]}),
  2085. smalltalk.HLBrowserModel);
  2086. smalltalk.addMethod(
  2087. "_showInstance_",
  2088. smalltalk.method({
  2089. selector: "showInstance:",
  2090. fn: function (aBoolean){
  2091. var self=this;
  2092. return smalltalk.withContext(function($ctx1) { var $1,$2,$4,$3;
  2093. self["@showInstance"]=aBoolean;
  2094. $1=_st(self)._selectedClass();
  2095. if(($receiver = $1) == nil || $receiver == undefined){
  2096. $1;
  2097. } else {
  2098. $2=self;
  2099. $4=aBoolean;
  2100. if(smalltalk.assert($4)){
  2101. $3=_st(_st(self)._selectedClass())._theNonMetaClass();
  2102. } else {
  2103. $3=_st(_st(self)._selectedClass())._theMetaClass();
  2104. };
  2105. _st($2)._selectedClass_($3);
  2106. };
  2107. _st(_st(self)._announcer())._announce_(_st((smalltalk.HLShowInstanceToggled || HLShowInstanceToggled))._new());
  2108. return self}, function($ctx1) {$ctx1.fill(self,"showInstance:",{aBoolean:aBoolean}, smalltalk.HLBrowserModel)})},
  2109. messageSends: ["ifNotNil:", "selectedClass:", "ifTrue:ifFalse:", "theNonMetaClass", "selectedClass", "theMetaClass", "announce:", "new", "announcer"]}),
  2110. smalltalk.HLBrowserModel);
  2111. smalltalk.addMethod(
  2112. "_unclassifiedProtocol",
  2113. smalltalk.method({
  2114. selector: "unclassifiedProtocol",
  2115. fn: function (){
  2116. var self=this;
  2117. return smalltalk.withContext(function($ctx1) { return "as yet unclassified";
  2118. }, function($ctx1) {$ctx1.fill(self,"unclassifiedProtocol",{}, smalltalk.HLBrowserModel)})},
  2119. messageSends: []}),
  2120. smalltalk.HLBrowserModel);
  2121. smalltalk.addMethod(
  2122. "_withCompileErrorHandling_",
  2123. smalltalk.method({
  2124. selector: "withCompileErrorHandling:",
  2125. fn: function (aBlock){
  2126. var self=this;
  2127. return smalltalk.withContext(function($ctx1) { _st((function(){
  2128. return smalltalk.withContext(function($ctx2) { return _st((function(){
  2129. return smalltalk.withContext(function($ctx3) { return _st(aBlock)._on_do_((smalltalk.ParseError || ParseError),(function(ex){
  2130. return smalltalk.withContext(function($ctx4) { return _st(self)._handleParseError_(ex);
  2131. }, function($ctx4) {$ctx4.fillBlock({ex:ex},$ctx1)})}));
  2132. }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}))._on_do_((smalltalk.UnknownVariableError || UnknownVariableError),(function(ex){
  2133. return smalltalk.withContext(function($ctx3) { return _st(self)._handleUnkownVariableError_(ex);
  2134. }, function($ctx3) {$ctx3.fillBlock({ex:ex},$ctx1)})}));
  2135. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._on_do_((smalltalk.CompilerError || CompilerError),(function(ex){
  2136. return smalltalk.withContext(function($ctx2) { return _st(self)._handleCompileError_(ex);
  2137. }, function($ctx2) {$ctx2.fillBlock({ex:ex},$ctx1)})}));
  2138. return self}, function($ctx1) {$ctx1.fill(self,"withCompileErrorHandling:",{aBlock:aBlock}, smalltalk.HLBrowserModel)})},
  2139. messageSends: ["on:do:", "handleCompileError:", "handleUnkownVariableError:", "handleParseError:"]}),
  2140. smalltalk.HLBrowserModel);
  2141. smalltalk.addMethod(
  2142. "_on_",
  2143. smalltalk.method({
  2144. selector: "on:",
  2145. fn: function (anEnvironment){
  2146. var self=this;
  2147. return smalltalk.withContext(function($ctx1) { var $2,$3,$1;
  2148. $2=_st(self)._new();
  2149. _st($2)._environment_(anEnvironment);
  2150. $3=_st($2)._yourself();
  2151. $1=$3;
  2152. return $1;
  2153. }, function($ctx1) {$ctx1.fill(self,"on:",{anEnvironment:anEnvironment}, smalltalk.HLBrowserModel.klass)})},
  2154. messageSends: ["environment:", "new", "yourself"]}),
  2155. smalltalk.HLBrowserModel.klass);
  2156. smalltalk.addClass('HLBrowserSourceWidget', smalltalk.HLWidget, ['model', 'methodContents', 'codeWidget'], 'Helios-Browser');
  2157. smalltalk.addMethod(
  2158. "_codeWidget",
  2159. smalltalk.method({
  2160. selector: "codeWidget",
  2161. fn: function (){
  2162. var self=this;
  2163. return smalltalk.withContext(function($ctx1) { var $2,$1;
  2164. $2=self["@codeWidget"];
  2165. if(($receiver = $2) == nil || $receiver == undefined){
  2166. self["@codeWidget"]=_st((smalltalk.HLSourceCodeWidget || HLSourceCodeWidget))._on_(_st(self)._model());
  2167. $1=self["@codeWidget"];
  2168. } else {
  2169. $1=$2;
  2170. };
  2171. return $1;
  2172. }, function($ctx1) {$ctx1.fill(self,"codeWidget",{}, smalltalk.HLBrowserSourceWidget)})},
  2173. messageSends: ["ifNil:", "on:", "model"]}),
  2174. smalltalk.HLBrowserSourceWidget);
  2175. smalltalk.addMethod(
  2176. "_contents",
  2177. smalltalk.method({
  2178. selector: "contents",
  2179. fn: function (){
  2180. var self=this;
  2181. return smalltalk.withContext(function($ctx1) { var $1;
  2182. $1=_st(_st(self)._codeWidget())._contents();
  2183. return $1;
  2184. }, function($ctx1) {$ctx1.fill(self,"contents",{}, smalltalk.HLBrowserSourceWidget)})},
  2185. messageSends: ["contents", "codeWidget"]}),
  2186. smalltalk.HLBrowserSourceWidget);
  2187. smalltalk.addMethod(
  2188. "_contents_",
  2189. smalltalk.method({
  2190. selector: "contents:",
  2191. fn: function (aString){
  2192. var self=this;
  2193. return smalltalk.withContext(function($ctx1) { _st(self)._methodContents_(aString);
  2194. _st(_st(self)._codeWidget())._contents_(aString);
  2195. return self}, function($ctx1) {$ctx1.fill(self,"contents:",{aString:aString}, smalltalk.HLBrowserSourceWidget)})},
  2196. messageSends: ["methodContents:", "contents:", "codeWidget"]}),
  2197. smalltalk.HLBrowserSourceWidget);
  2198. smalltalk.addMethod(
  2199. "_focus",
  2200. smalltalk.method({
  2201. selector: "focus",
  2202. fn: function (){
  2203. var self=this;
  2204. return smalltalk.withContext(function($ctx1) { _st(_st(self)._codeWidget())._focus();
  2205. return self}, function($ctx1) {$ctx1.fill(self,"focus",{}, smalltalk.HLBrowserSourceWidget)})},
  2206. messageSends: ["focus", "codeWidget"]}),
  2207. smalltalk.HLBrowserSourceWidget);
  2208. smalltalk.addMethod(
  2209. "_hasFocus",
  2210. smalltalk.method({
  2211. selector: "hasFocus",
  2212. fn: function (){
  2213. var self=this;
  2214. return smalltalk.withContext(function($ctx1) { var $1;
  2215. $1=_st(_st(self)._codeWidget())._hasFocus();
  2216. return $1;
  2217. }, function($ctx1) {$ctx1.fill(self,"hasFocus",{}, smalltalk.HLBrowserSourceWidget)})},
  2218. messageSends: ["hasFocus", "codeWidget"]}),
  2219. smalltalk.HLBrowserSourceWidget);
  2220. smalltalk.addMethod(
  2221. "_hasModification",
  2222. smalltalk.method({
  2223. selector: "hasModification",
  2224. fn: function (){
  2225. var self=this;
  2226. return smalltalk.withContext(function($ctx1) { var $1;
  2227. $1=_st(_st(_st(self)._methodContents()).__eq(_st(self)._contents()))._not();
  2228. return $1;
  2229. }, function($ctx1) {$ctx1.fill(self,"hasModification",{}, smalltalk.HLBrowserSourceWidget)})},
  2230. messageSends: ["not", "=", "contents", "methodContents"]}),
  2231. smalltalk.HLBrowserSourceWidget);
  2232. smalltalk.addMethod(
  2233. "_initialize",
  2234. smalltalk.method({
  2235. selector: "initialize",
  2236. fn: function (){
  2237. var self=this;
  2238. return smalltalk.withContext(function($ctx1) { smalltalk.HLWidget.fn.prototype._initialize.apply(_st(self), []);
  2239. _st(self)._observeSystem();
  2240. return self}, function($ctx1) {$ctx1.fill(self,"initialize",{}, smalltalk.HLBrowserSourceWidget)})},
  2241. messageSends: ["initialize", "observeSystem"]}),
  2242. smalltalk.HLBrowserSourceWidget);
  2243. smalltalk.addMethod(
  2244. "_methodContents",
  2245. smalltalk.method({
  2246. selector: "methodContents",
  2247. fn: function (){
  2248. var self=this;
  2249. return smalltalk.withContext(function($ctx1) { var $2,$1;
  2250. $2=self["@methodContents"];
  2251. if(($receiver = $2) == nil || $receiver == undefined){
  2252. self["@methodContents"]="";
  2253. $1=self["@methodContents"];
  2254. } else {
  2255. $1=$2;
  2256. };
  2257. return $1;
  2258. }, function($ctx1) {$ctx1.fill(self,"methodContents",{}, smalltalk.HLBrowserSourceWidget)})},
  2259. messageSends: ["ifNil:"]}),
  2260. smalltalk.HLBrowserSourceWidget);
  2261. smalltalk.addMethod(
  2262. "_methodContents_",
  2263. smalltalk.method({
  2264. selector: "methodContents:",
  2265. fn: function (aString){
  2266. var self=this;
  2267. return smalltalk.withContext(function($ctx1) { self["@methodContents"]=aString;
  2268. return self}, function($ctx1) {$ctx1.fill(self,"methodContents:",{aString:aString}, smalltalk.HLBrowserSourceWidget)})},
  2269. messageSends: []}),
  2270. smalltalk.HLBrowserSourceWidget);
  2271. smalltalk.addMethod(
  2272. "_model",
  2273. smalltalk.method({
  2274. selector: "model",
  2275. fn: function (){
  2276. var self=this;
  2277. return smalltalk.withContext(function($ctx1) { var $1;
  2278. $1=self["@model"];
  2279. return $1;
  2280. }, function($ctx1) {$ctx1.fill(self,"model",{}, smalltalk.HLBrowserSourceWidget)})},
  2281. messageSends: []}),
  2282. smalltalk.HLBrowserSourceWidget);
  2283. smalltalk.addMethod(
  2284. "_model_",
  2285. smalltalk.method({
  2286. selector: "model:",
  2287. fn: function (aBrowserModel){
  2288. var self=this;
  2289. return smalltalk.withContext(function($ctx1) { self["@model"]=aBrowserModel;
  2290. _st(self)._observeModel();
  2291. return self}, function($ctx1) {$ctx1.fill(self,"model:",{aBrowserModel:aBrowserModel}, smalltalk.HLBrowserSourceWidget)})},
  2292. messageSends: ["observeModel"]}),
  2293. smalltalk.HLBrowserSourceWidget);
  2294. smalltalk.addMethod(
  2295. "_observeModel",
  2296. smalltalk.method({
  2297. selector: "observeModel",
  2298. fn: function (){
  2299. var self=this;
  2300. return smalltalk.withContext(function($ctx1) { var $1,$2;
  2301. $1=_st(_st(self)._model())._announcer();
  2302. _st($1)._on_do_((smalltalk.HLMethodSelected || HLMethodSelected),(function(ann){
  2303. return smalltalk.withContext(function($ctx2) { return _st(self)._onMethodSelected_(_st(ann)._item());
  2304. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  2305. _st($1)._on_do_((smalltalk.HLClassSelected || HLClassSelected),(function(ann){
  2306. return smalltalk.withContext(function($ctx2) { return _st(self)._onClassSelected_(_st(ann)._item());
  2307. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  2308. _st($1)._on_do_((smalltalk.HLProtocolSelected || HLProtocolSelected),(function(ann){
  2309. return smalltalk.withContext(function($ctx2) { return _st(self)._onProtocolSelected_(_st(ann)._item());
  2310. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  2311. $2=_st($1)._on_do_((smalltalk.HLSourceCodeFocusRequested || HLSourceCodeFocusRequested),(function(ann){
  2312. return smalltalk.withContext(function($ctx2) { return _st(self)._onSourceCodeFocusRequested();
  2313. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  2314. return self}, function($ctx1) {$ctx1.fill(self,"observeModel",{}, smalltalk.HLBrowserSourceWidget)})},
  2315. messageSends: ["on:do:", "onMethodSelected:", "item", "announcer", "model", "onClassSelected:", "onProtocolSelected:", "onSourceCodeFocusRequested"]}),
  2316. smalltalk.HLBrowserSourceWidget);
  2317. smalltalk.addMethod(
  2318. "_observeSystem",
  2319. smalltalk.method({
  2320. selector: "observeSystem",
  2321. fn: function (){
  2322. var self=this;
  2323. return smalltalk.withContext(function($ctx1) { _st(_st((smalltalk.SystemAnnouncer || SystemAnnouncer))._current())._on_do_((smalltalk.MethodModified || MethodModified),(function(ann){
  2324. return smalltalk.withContext(function($ctx2) { return _st(self)._onMethodModified_(_st(ann)._method());
  2325. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  2326. return self}, function($ctx1) {$ctx1.fill(self,"observeSystem",{}, smalltalk.HLBrowserSourceWidget)})},
  2327. messageSends: ["on:do:", "onMethodModified:", "method", "current"]}),
  2328. smalltalk.HLBrowserSourceWidget);
  2329. smalltalk.addMethod(
  2330. "_onClassSelected_",
  2331. smalltalk.method({
  2332. selector: "onClassSelected:",
  2333. fn: function (aClass){
  2334. var self=this;
  2335. return smalltalk.withContext(function($ctx1) { var $1,$2;
  2336. $1=aClass;
  2337. if(($receiver = $1) == nil || $receiver == undefined){
  2338. $2=_st(self)._contents_("");
  2339. return $2;
  2340. } else {
  2341. $1;
  2342. };
  2343. _st(self)._contents_(_st(aClass)._definition());
  2344. return self}, function($ctx1) {$ctx1.fill(self,"onClassSelected:",{aClass:aClass}, smalltalk.HLBrowserSourceWidget)})},
  2345. messageSends: ["ifNil:", "contents:", "definition"]}),
  2346. smalltalk.HLBrowserSourceWidget);
  2347. smalltalk.addMethod(
  2348. "_onMethodModified_",
  2349. smalltalk.method({
  2350. selector: "onMethodModified:",
  2351. fn: function (aMethod){
  2352. var self=this;
  2353. return smalltalk.withContext(function($ctx1) { var $1,$2,$3,$4,$5,$6;
  2354. $1=_st(_st(_st(self)._model())._selectedClass()).__eq(_st(aMethod)._methodClass());
  2355. if(! smalltalk.assert($1)){
  2356. $2=self;
  2357. return $2;
  2358. };
  2359. $3=_st(_st(self)._model())._selectedMethod();
  2360. if(($receiver = $3) == nil || $receiver == undefined){
  2361. $4=self;
  2362. return $4;
  2363. } else {
  2364. $3;
  2365. };
  2366. $5=_st(_st(_st(_st(self)._model())._selectedMethod())._selector()).__eq(_st(aMethod)._selector());
  2367. if(! smalltalk.assert($5)){
  2368. $6=self;
  2369. return $6;
  2370. };
  2371. _st(self)._refresh();
  2372. return self}, function($ctx1) {$ctx1.fill(self,"onMethodModified:",{aMethod:aMethod},smalltalk.HLBrowserSourceWidget)})},
  2373. messageSends: ["ifFalse:", "=", "methodClass", "selectedClass", "model", "ifNil:", "selectedMethod", "selector", "refresh"]}),
  2374. smalltalk.HLBrowserSourceWidget);
  2375. smalltalk.addMethod(
  2376. "_onMethodSelected_",
  2377. smalltalk.method({
  2378. selector: "onMethodSelected:",
  2379. fn: function (aCompiledMethod){
  2380. var self=this;
  2381. return smalltalk.withContext(function($ctx1) { var $1,$2;
  2382. $1=aCompiledMethod;
  2383. if(($receiver = $1) == nil || $receiver == undefined){
  2384. $2=_st(self)._contents_("");
  2385. return $2;
  2386. } else {
  2387. $1;
  2388. };
  2389. _st(self)._contents_(_st(aCompiledMethod)._source());
  2390. return self}, function($ctx1) {$ctx1.fill(self,"onMethodSelected:",{aCompiledMethod:aCompiledMethod}, smalltalk.HLBrowserSourceWidget)})},
  2391. messageSends: ["ifNil:", "contents:", "source"]}),
  2392. smalltalk.HLBrowserSourceWidget);
  2393. smalltalk.addMethod(
  2394. "_onProtocolSelected_",
  2395. smalltalk.method({
  2396. selector: "onProtocolSelected:",
  2397. fn: function (aString){
  2398. var self=this;
  2399. return smalltalk.withContext(function($ctx1) { var $1,$2;
  2400. $1=_st(_st(self)._model())._selectedClass();
  2401. if(($receiver = $1) == nil || $receiver == undefined){
  2402. $2=_st(self)._contents_("");
  2403. return $2;
  2404. } else {
  2405. $1;
  2406. };
  2407. _st(self)._contents_(_st(_st(_st(self)._model())._selectedClass())._definition());
  2408. return self}, function($ctx1) {$ctx1.fill(self,"onProtocolSelected:",{aString:aString}, smalltalk.HLBrowserSourceWidget)})},
  2409. messageSends: ["ifNil:", "contents:", "selectedClass", "model", "definition"]}),
  2410. smalltalk.HLBrowserSourceWidget);
  2411. smalltalk.addMethod(
  2412. "_onSourceCodeFocusRequested",
  2413. smalltalk.method({
  2414. selector: "onSourceCodeFocusRequested",
  2415. fn: function (){
  2416. var self=this;
  2417. return smalltalk.withContext(function($ctx1) { _st(self)._focus();
  2418. return self}, function($ctx1) {$ctx1.fill(self,"onSourceCodeFocusRequested",{}, smalltalk.HLBrowserSourceWidget)})},
  2419. messageSends: ["focus"]}),
  2420. smalltalk.HLBrowserSourceWidget);
  2421. smalltalk.addMethod(
  2422. "_refresh",
  2423. smalltalk.method({
  2424. selector: "refresh",
  2425. fn: function (){
  2426. var self=this;
  2427. return smalltalk.withContext(function($ctx1) { var $1,$2,$3,$4;
  2428. $1=_st(self)._hasModification();
  2429. if(smalltalk.assert($1)){
  2430. $2=self;
  2431. return $2;
  2432. };
  2433. $3=_st(self)._hasFocus();
  2434. if(smalltalk.assert($3)){
  2435. $4=self;
  2436. return $4;
  2437. };
  2438. _st(self)._contents_(_st(_st(_st(self)._model())._selectedMethod())._source());
  2439. return self}, function($ctx1) {$ctx1.fill(self,"refresh",{}, smalltalk.HLBrowserSourceWidget)})},
  2440. messageSends: ["ifTrue:", "hasModification", "hasFocus", "contents:", "source", "selectedMethod", "model"]}),
  2441. smalltalk.HLBrowserSourceWidget);
  2442. smalltalk.addMethod(
  2443. "_renderContentOn_",
  2444. smalltalk.method({
  2445. selector: "renderContentOn:",
  2446. fn: function (html){
  2447. var self=this;
  2448. return smalltalk.withContext(function($ctx1) { _st(_st(self)._codeWidget())._renderOn_(html);
  2449. return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html}, smalltalk.HLBrowserSourceWidget)})},
  2450. messageSends: ["renderOn:", "codeWidget"]}),
  2451. smalltalk.HLBrowserSourceWidget);
  2452. smalltalk.addMethod(
  2453. "_on_",
  2454. smalltalk.method({
  2455. selector: "on:",
  2456. fn: function (aBrowserModel){
  2457. var self=this;
  2458. return smalltalk.withContext(function($ctx1) { var $2,$3,$1;
  2459. $2=_st(self)._new();
  2460. _st($2)._model_(aBrowserModel);
  2461. $3=_st($2)._yourself();
  2462. $1=$3;
  2463. return $1;
  2464. }, function($ctx1) {$ctx1.fill(self,"on:",{aBrowserModel:aBrowserModel}, smalltalk.HLBrowserSourceWidget.klass)})},
  2465. messageSends: ["model:", "new", "yourself"]}),
  2466. smalltalk.HLBrowserSourceWidget.klass);
  2467. smalltalk.addClass('HLClassCache', smalltalk.Object, ['class', 'selectorsCache', 'overrideCache', 'overriddenCache'], 'Helios-Browser');
  2468. smalltalk.addMethod(
  2469. "_invalidateChildrenSelector_",
  2470. smalltalk.method({
  2471. selector: "invalidateChildrenSelector:",
  2472. fn: function (aSelector){
  2473. var self=this;
  2474. return smalltalk.withContext(function($ctx1) { var $1,$2;
  2475. _st(_st(_st(self)._theClass())._subclasses())._do_((function(each){
  2476. return smalltalk.withContext(function($ctx2) { $1=_st(_st(self)._selectorsCache())._cacheFor_(each);
  2477. _st($1)._removeSelector_(aSelector);
  2478. $2=_st($1)._invalidateChildrenSelector_(aSelector);
  2479. return $2;
  2480. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
  2481. return self}, function($ctx1) {$ctx1.fill(self,"invalidateChildrenSelector:",{aSelector:aSelector}, smalltalk.HLClassCache)})},
  2482. messageSends: ["do:", "removeSelector:", "cacheFor:", "selectorsCache", "invalidateChildrenSelector:", "subclasses", "theClass"]}),
  2483. smalltalk.HLClassCache);
  2484. smalltalk.addMethod(
  2485. "_invalidateParentSelector_",
  2486. smalltalk.method({
  2487. selector: "invalidateParentSelector:",
  2488. fn: function (aSelector){
  2489. var self=this;
  2490. return smalltalk.withContext(function($ctx1) { var $1,$2,$3;
  2491. $1=_st(_st(self)._theClass())._superclass();
  2492. if(($receiver = $1) == nil || $receiver == undefined){
  2493. $1;
  2494. } else {
  2495. $2=_st(_st(self)._selectorsCache())._cacheFor_(_st(_st(self)._theClass())._superclass());
  2496. _st($2)._removeSelector_(aSelector);
  2497. $3=_st($2)._invalidateParentSelector_(aSelector);
  2498. $3;
  2499. };
  2500. return self}, function($ctx1) {$ctx1.fill(self,"invalidateParentSelector:",{aSelector:aSelector}, smalltalk.HLClassCache)})},
  2501. messageSends: ["ifNotNil:", "removeSelector:", "cacheFor:", "superclass", "theClass", "selectorsCache", "invalidateParentSelector:"]}),
  2502. smalltalk.HLClassCache);
  2503. smalltalk.addMethod(
  2504. "_invalidateSelector_",
  2505. smalltalk.method({
  2506. selector: "invalidateSelector:",
  2507. fn: function (aSelector){
  2508. var self=this;
  2509. return smalltalk.withContext(function($ctx1) { var $1,$2;
  2510. $1=self;
  2511. _st($1)._invalidateParentSelector_(aSelector);
  2512. _st($1)._invalidateChildrenSelector_(aSelector);
  2513. $2=_st($1)._removeSelector_(aSelector);
  2514. return self}, function($ctx1) {$ctx1.fill(self,"invalidateSelector:",{aSelector:aSelector}, smalltalk.HLClassCache)})},
  2515. messageSends: ["invalidateParentSelector:", "invalidateChildrenSelector:", "removeSelector:"]}),
  2516. smalltalk.HLClassCache);
  2517. smalltalk.addMethod(
  2518. "_isOverridden_",
  2519. smalltalk.method({
  2520. selector: "isOverridden:",
  2521. fn: function (aMethod){
  2522. var self=this;
  2523. return smalltalk.withContext(function($ctx1) { var $1;
  2524. $1=_st(_st(self)._overriddenCache())._at_ifAbsentPut_(_st(aMethod)._selector(),(function(){
  2525. return smalltalk.withContext(function($ctx2) { return _st(aMethod)._isOverridden();
  2526. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2527. return $1;
  2528. }, function($ctx1) {$ctx1.fill(self,"isOverridden:",{aMethod:aMethod}, smalltalk.HLClassCache)})},
  2529. messageSends: ["at:ifAbsentPut:", "selector", "isOverridden", "overriddenCache"]}),
  2530. smalltalk.HLClassCache);
  2531. smalltalk.addMethod(
  2532. "_isOverride_",
  2533. smalltalk.method({
  2534. selector: "isOverride:",
  2535. fn: function (aMethod){
  2536. var self=this;
  2537. return smalltalk.withContext(function($ctx1) { var $1;
  2538. $1=_st(_st(self)._overrideCache())._at_ifAbsentPut_(_st(aMethod)._selector(),(function(){
  2539. return smalltalk.withContext(function($ctx2) { return _st(aMethod)._isOverride();
  2540. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2541. return $1;
  2542. }, function($ctx1) {$ctx1.fill(self,"isOverride:",{aMethod:aMethod}, smalltalk.HLClassCache)})},
  2543. messageSends: ["at:ifAbsentPut:", "selector", "isOverride", "overrideCache"]}),
  2544. smalltalk.HLClassCache);
  2545. smalltalk.addMethod(
  2546. "_overriddenCache",
  2547. smalltalk.method({
  2548. selector: "overriddenCache",
  2549. fn: function (){
  2550. var self=this;
  2551. return smalltalk.withContext(function($ctx1) { var $2,$1;
  2552. $2=self["@overriddenCache"];
  2553. if(($receiver = $2) == nil || $receiver == undefined){
  2554. self["@overriddenCache"]=_st((smalltalk.HashedCollection || HashedCollection))._new();
  2555. $1=self["@overriddenCache"];
  2556. } else {
  2557. $1=$2;
  2558. };
  2559. return $1;
  2560. }, function($ctx1) {$ctx1.fill(self,"overriddenCache",{}, smalltalk.HLClassCache)})},
  2561. messageSends: ["ifNil:", "new"]}),
  2562. smalltalk.HLClassCache);
  2563. smalltalk.addMethod(
  2564. "_overrideCache",
  2565. smalltalk.method({
  2566. selector: "overrideCache",
  2567. fn: function (){
  2568. var self=this;
  2569. return smalltalk.withContext(function($ctx1) { var $2,$1;
  2570. $2=self["@overrideCache"];
  2571. if(($receiver = $2) == nil || $receiver == undefined){
  2572. self["@overrideCache"]=_st((smalltalk.HashedCollection || HashedCollection))._new();
  2573. $1=self["@overrideCache"];
  2574. } else {
  2575. $1=$2;
  2576. };
  2577. return $1;
  2578. }, function($ctx1) {$ctx1.fill(self,"overrideCache",{}, smalltalk.HLClassCache)})},
  2579. messageSends: ["ifNil:", "new"]}),
  2580. smalltalk.HLClassCache);
  2581. smalltalk.addMethod(
  2582. "_removeSelector_",
  2583. smalltalk.method({
  2584. selector: "removeSelector:",
  2585. fn: function (aSelector){
  2586. var self=this;
  2587. return smalltalk.withContext(function($ctx1) { _st(_st(self)._overriddenCache())._removeKey_ifAbsent_(aSelector,(function(){
  2588. return smalltalk.withContext(function($ctx2) { }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2589. _st(_st(self)._overrideCache())._removeKey_ifAbsent_(aSelector,(function(){
  2590. return smalltalk.withContext(function($ctx2) { }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2591. return self}, function($ctx1) {$ctx1.fill(self,"removeSelector:",{aSelector:aSelector}, smalltalk.HLClassCache)})},
  2592. messageSends: ["removeKey:ifAbsent:", "overriddenCache", "overrideCache"]}),
  2593. smalltalk.HLClassCache);
  2594. smalltalk.addMethod(
  2595. "_selectorsCache",
  2596. smalltalk.method({
  2597. selector: "selectorsCache",
  2598. fn: function (){
  2599. var self=this;
  2600. return smalltalk.withContext(function($ctx1) { var $1;
  2601. $1=self["@selectorsCache"];
  2602. return $1;
  2603. }, function($ctx1) {$ctx1.fill(self,"selectorsCache",{}, smalltalk.HLClassCache)})},
  2604. messageSends: []}),
  2605. smalltalk.HLClassCache);
  2606. smalltalk.addMethod(
  2607. "_selectorsCache_",
  2608. smalltalk.method({
  2609. selector: "selectorsCache:",
  2610. fn: function (aCache){
  2611. var self=this;
  2612. return smalltalk.withContext(function($ctx1) { self["@selectorsCache"]=aCache;
  2613. return self}, function($ctx1) {$ctx1.fill(self,"selectorsCache:",{aCache:aCache}, smalltalk.HLClassCache)})},
  2614. messageSends: []}),
  2615. smalltalk.HLClassCache);
  2616. smalltalk.addMethod(
  2617. "_theClass",
  2618. smalltalk.method({
  2619. selector: "theClass",
  2620. fn: function (){
  2621. var self=this;
  2622. return smalltalk.withContext(function($ctx1) { var $1;
  2623. $1=self["@class"];
  2624. return $1;
  2625. }, function($ctx1) {$ctx1.fill(self,"theClass",{}, smalltalk.HLClassCache)})},
  2626. messageSends: []}),
  2627. smalltalk.HLClassCache);
  2628. smalltalk.addMethod(
  2629. "_theClass_",
  2630. smalltalk.method({
  2631. selector: "theClass:",
  2632. fn: function (aClass){
  2633. var self=this;
  2634. return smalltalk.withContext(function($ctx1) { self["@class"]=aClass;
  2635. return self}, function($ctx1) {$ctx1.fill(self,"theClass:",{aClass:aClass}, smalltalk.HLClassCache)})},
  2636. messageSends: []}),
  2637. smalltalk.HLClassCache);
  2638. smalltalk.addMethod(
  2639. "_on_selectorsCache_",
  2640. smalltalk.method({
  2641. selector: "on:selectorsCache:",
  2642. fn: function (aClass,aSelectorsCache){
  2643. var self=this;
  2644. return smalltalk.withContext(function($ctx1) { var $2,$3,$1;
  2645. $2=_st(self)._new();
  2646. _st($2)._theClass_(aClass);
  2647. _st($2)._selectorsCache_(aSelectorsCache);
  2648. $3=_st($2)._yourself();
  2649. $1=$3;
  2650. return $1;
  2651. }, function($ctx1) {$ctx1.fill(self,"on:selectorsCache:",{aClass:aClass,aSelectorsCache:aSelectorsCache}, smalltalk.HLClassCache.klass)})},
  2652. messageSends: ["theClass:", "new", "selectorsCache:", "yourself"]}),
  2653. smalltalk.HLClassCache.klass);
  2654. smalltalk.addClass('HLSelectorsCache', smalltalk.Object, ['classesCache'], 'Helios-Browser');
  2655. smalltalk.addMethod(
  2656. "_cacheFor_",
  2657. smalltalk.method({
  2658. selector: "cacheFor:",
  2659. fn: function (aClass){
  2660. var self=this;
  2661. return smalltalk.withContext(function($ctx1) { var $1,$2;
  2662. $1=aClass;
  2663. if(($receiver = $1) == nil || $receiver == undefined){
  2664. return nil;
  2665. } else {
  2666. $1;
  2667. };
  2668. $2=_st(_st(self)._classesCache())._at_ifAbsentPut_(_st(aClass)._name(),(function(){
  2669. return smalltalk.withContext(function($ctx2) { return _st(self)._newCacheFor_(aClass);
  2670. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2671. return $2;
  2672. }, function($ctx1) {$ctx1.fill(self,"cacheFor:",{aClass:aClass}, smalltalk.HLSelectorsCache)})},
  2673. messageSends: ["ifNil:", "at:ifAbsentPut:", "name", "newCacheFor:", "classesCache"]}),
  2674. smalltalk.HLSelectorsCache);
  2675. smalltalk.addMethod(
  2676. "_classesCache",
  2677. smalltalk.method({
  2678. selector: "classesCache",
  2679. fn: function (){
  2680. var self=this;
  2681. return smalltalk.withContext(function($ctx1) { var $2,$1;
  2682. $2=self["@classesCache"];
  2683. if(($receiver = $2) == nil || $receiver == undefined){
  2684. self["@classesCache"]=_st((smalltalk.HashedCollection || HashedCollection))._new();
  2685. $1=self["@classesCache"];
  2686. } else {
  2687. $1=$2;
  2688. };
  2689. return $1;
  2690. }, function($ctx1) {$ctx1.fill(self,"classesCache",{}, smalltalk.HLSelectorsCache)})},
  2691. messageSends: ["ifNil:", "new"]}),
  2692. smalltalk.HLSelectorsCache);
  2693. smalltalk.addMethod(
  2694. "_initialize",
  2695. smalltalk.method({
  2696. selector: "initialize",
  2697. fn: function (){
  2698. var self=this;
  2699. return smalltalk.withContext(function($ctx1) { smalltalk.Object.fn.prototype._initialize.apply(_st(self), []);
  2700. _st(self)._observeSystem();
  2701. return self}, function($ctx1) {$ctx1.fill(self,"initialize",{}, smalltalk.HLSelectorsCache)})},
  2702. messageSends: ["initialize", "observeSystem"]}),
  2703. smalltalk.HLSelectorsCache);
  2704. smalltalk.addMethod(
  2705. "_invalidateCacheFor_",
  2706. smalltalk.method({
  2707. selector: "invalidateCacheFor:",
  2708. fn: function (aMethod){
  2709. var self=this;
  2710. return smalltalk.withContext(function($ctx1) { _st(_st(self)._cacheFor_(_st(aMethod)._methodClass()))._invalidateSelector_(_st(aMethod)._selector());
  2711. return self}, function($ctx1) {$ctx1.fill(self,"invalidateCacheFor:",{aMethod:aMethod}, smalltalk.HLSelectorsCache)})},
  2712. messageSends: ["invalidateSelector:", "selector", "cacheFor:", "methodClass"]}),
  2713. smalltalk.HLSelectorsCache);
  2714. smalltalk.addMethod(
  2715. "_isOverridden_",
  2716. smalltalk.method({
  2717. selector: "isOverridden:",
  2718. fn: function (aMethod){
  2719. var self=this;
  2720. return smalltalk.withContext(function($ctx1) { var $1;
  2721. $1=_st(_st(self)._cacheFor_(_st(aMethod)._methodClass()))._isOverridden_(aMethod);
  2722. return $1;
  2723. }, function($ctx1) {$ctx1.fill(self,"isOverridden:",{aMethod:aMethod}, smalltalk.HLSelectorsCache)})},
  2724. messageSends: ["isOverridden:", "cacheFor:", "methodClass"]}),
  2725. smalltalk.HLSelectorsCache);
  2726. smalltalk.addMethod(
  2727. "_isOverride_",
  2728. smalltalk.method({
  2729. selector: "isOverride:",
  2730. fn: function (aMethod){
  2731. var self=this;
  2732. return smalltalk.withContext(function($ctx1) { var $1;
  2733. $1=_st(_st(self)._cacheFor_(_st(aMethod)._methodClass()))._isOverride_(aMethod);
  2734. return $1;
  2735. }, function($ctx1) {$ctx1.fill(self,"isOverride:",{aMethod:aMethod}, smalltalk.HLSelectorsCache)})},
  2736. messageSends: ["isOverride:", "cacheFor:", "methodClass"]}),
  2737. smalltalk.HLSelectorsCache);
  2738. smalltalk.addMethod(
  2739. "_newCacheFor_",
  2740. smalltalk.method({
  2741. selector: "newCacheFor:",
  2742. fn: function (aClass){
  2743. var self=this;
  2744. return smalltalk.withContext(function($ctx1) { var $1;
  2745. $1=_st((smalltalk.HLClassCache || HLClassCache))._on_selectorsCache_(aClass,self);
  2746. return $1;
  2747. }, function($ctx1) {$ctx1.fill(self,"newCacheFor:",{aClass:aClass}, smalltalk.HLSelectorsCache)})},
  2748. messageSends: ["on:selectorsCache:"]}),
  2749. smalltalk.HLSelectorsCache);
  2750. smalltalk.addMethod(
  2751. "_observeSystem",
  2752. smalltalk.method({
  2753. selector: "observeSystem",
  2754. fn: function (){
  2755. var self=this;
  2756. return smalltalk.withContext(function($ctx1) { var $1,$2;
  2757. $1=_st((smalltalk.SystemAnnouncer || SystemAnnouncer))._current();
  2758. _st($1)._on_do_((smalltalk.MethodAdded || MethodAdded),(function(ann){
  2759. return smalltalk.withContext(function($ctx2) { return _st(self)._onMethodAdded_(_st(ann)._method());
  2760. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  2761. $2=_st($1)._on_do_((smalltalk.MethodRemoved || MethodRemoved),(function(ann){
  2762. return smalltalk.withContext(function($ctx2) { return _st(self)._onMethodRemoved_(_st(ann)._method());
  2763. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
  2764. return self}, function($ctx1) {$ctx1.fill(self,"observeSystem",{}, smalltalk.HLSelectorsCache)})},
  2765. messageSends: ["on:do:", "onMethodAdded:", "method", "current", "onMethodRemoved:"]}),
  2766. smalltalk.HLSelectorsCache);
  2767. smalltalk.addMethod(
  2768. "_onMethodAdded_",
  2769. smalltalk.method({
  2770. selector: "onMethodAdded:",
  2771. fn: function (aMethod){
  2772. var self=this;
  2773. return smalltalk.withContext(function($ctx1) { _st(self)._invalidateCacheFor_(aMethod);
  2774. return self}, function($ctx1) {$ctx1.fill(self,"onMethodAdded:",{aMethod:aMethod}, smalltalk.HLSelectorsCache)})},
  2775. messageSends: ["invalidateCacheFor:"]}),
  2776. smalltalk.HLSelectorsCache);
  2777. smalltalk.addMethod(
  2778. "_onMethodRemoved_",
  2779. smalltalk.method({
  2780. selector: "onMethodRemoved:",
  2781. fn: function (aMethod){
  2782. var self=this;
  2783. return smalltalk.withContext(function($ctx1) { _st(self)._invalidateCacheFor_(aMethod);
  2784. return self}, function($ctx1) {$ctx1.fill(self,"onMethodRemoved:",{aMethod:aMethod}, smalltalk.HLSelectorsCache)})},
  2785. messageSends: ["invalidateCacheFor:"]}),
  2786. smalltalk.HLSelectorsCache);
  2787. smalltalk.HLSelectorsCache.klass.iVarNames = ['current'];
  2788. smalltalk.addMethod(
  2789. "_current",
  2790. smalltalk.method({
  2791. selector: "current",
  2792. fn: function (){
  2793. var self=this;
  2794. return smalltalk.withContext(function($ctx1) { var $2,$1;
  2795. $2=self["@current"];
  2796. if(($receiver = $2) == nil || $receiver == undefined){
  2797. self["@current"]=smalltalk.Object.klass.fn.prototype._new.apply(_st(self), []);
  2798. $1=self["@current"];
  2799. } else {
  2800. $1=$2;
  2801. };
  2802. return $1;
  2803. }, function($ctx1) {$ctx1.fill(self,"current",{}, smalltalk.HLSelectorsCache.klass)})},
  2804. messageSends: ["ifNil:", "new"]}),
  2805. smalltalk.HLSelectorsCache.klass);
  2806. smalltalk.addMethod(
  2807. "_flush",
  2808. smalltalk.method({
  2809. selector: "flush",
  2810. fn: function (){
  2811. var self=this;
  2812. return smalltalk.withContext(function($ctx1) { self["@current"]=nil;
  2813. return self}, function($ctx1) {$ctx1.fill(self,"flush",{}, smalltalk.HLSelectorsCache.klass)})},
  2814. messageSends: []}),
  2815. smalltalk.HLSelectorsCache.klass);
  2816. smalltalk.addMethod(
  2817. "_new",
  2818. smalltalk.method({
  2819. selector: "new",
  2820. fn: function (){
  2821. var self=this;
  2822. return smalltalk.withContext(function($ctx1) { _st(self)._shouldNotImplement();
  2823. return self}, function($ctx1) {$ctx1.fill(self,"new",{}, smalltalk.HLSelectorsCache.klass)})},
  2824. messageSends: ["shouldNotImplement"]}),
  2825. smalltalk.HLSelectorsCache.klass);
  2826. smalltalk.addMethod(
  2827. "_isOverridden",
  2828. smalltalk.method({
  2829. selector: "isOverridden",
  2830. fn: function (){
  2831. var self=this;
  2832. var selector;
  2833. return smalltalk.withContext(function($ctx1) { var $1;
  2834. var $early={};
  2835. try {
  2836. selector=_st(self)._selector();
  2837. _st(_st(self)._methodClass())._allSubclassesDo_((function(each){
  2838. return smalltalk.withContext(function($ctx2) { $1=_st(each)._includesSelector_(selector);
  2839. if(smalltalk.assert($1)){
  2840. throw $early=[true];
  2841. };
  2842. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
  2843. return false;
  2844. }
  2845. catch(e) {if(e===$early)return e[0]; throw e}
  2846. }, function($ctx1) {$ctx1.fill(self,"isOverridden",{selector:selector}, smalltalk.CompiledMethod)})},
  2847. messageSends: ["selector", "allSubclassesDo:", "ifTrue:", "includesSelector:", "methodClass"]}),
  2848. smalltalk.CompiledMethod);
  2849. smalltalk.addMethod(
  2850. "_isOverride",
  2851. smalltalk.method({
  2852. selector: "isOverride",
  2853. fn: function (){
  2854. var self=this;
  2855. var superclass;
  2856. return smalltalk.withContext(function($ctx1) { var $1,$2;
  2857. superclass=_st(_st(self)._methodClass())._superclass();
  2858. $1=superclass;
  2859. if(($receiver = $1) == nil || $receiver == undefined){
  2860. return false;
  2861. } else {
  2862. $1;
  2863. };
  2864. $2=_st(_st(_st(_st(self)._methodClass())._superclass())._lookupSelector_(_st(self)._selector()))._notNil();
  2865. return $2;
  2866. }, function($ctx1) {$ctx1.fill(self,"isOverride",{superclass:superclass}, smalltalk.CompiledMethod)})},
  2867. messageSends: ["superclass", "methodClass", "ifNil:", "notNil", "lookupSelector:", "selector"]}),
  2868. smalltalk.CompiledMethod);