| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473 | smalltalk.addPackage('Helios-Browser', {});smalltalk.addClass('HLBrowser', smalltalk.HLWidget, ['model', 'packagesListWidget', 'classesListWidget', 'protocolsListWidget', 'methodsListWidget', 'sourceWidget'], 'Helios-Browser');smalltalk.addMethod("_announcer",smalltalk.method({selector: "announcer",fn: function () {    var self = this;    var $1;    $1 = smalltalk.send(smalltalk.send(self, "_model", []), "_announcer", []);    return $1;}}),smalltalk.HLBrowser);smalltalk.addMethod("_classesListWidget",smalltalk.method({selector: "classesListWidget",fn: function () {    var self = this;    var $1;    if (($receiver = self['@classesListWidget']) == nil ||        $receiver == undefined) {        self['@classesListWidget'] = smalltalk.send(smalltalk.HLClassesListWidget || HLClassesListWidget, "_on_", [smalltalk.send(self, "_model", [])]);        self['@classesListWidget'];        $1 = smalltalk.send(self['@classesListWidget'], "_next_", [smalltalk.send(self, "_protocolsListWidget", [])]);    } else {        $1 = self['@classesListWidget'];    }    return $1;}}),smalltalk.HLBrowser);smalltalk.addMethod("_environment",smalltalk.method({selector: "environment",fn: function () {    var self = this;    var $1;    $1 = smalltalk.send(smalltalk.send(self, "_model", []), "_environment", []);    return $1;}}),smalltalk.HLBrowser);smalltalk.addMethod("_methodsListWidget",smalltalk.method({selector: "methodsListWidget",fn: function () {    var self = this;    var $1;    if (($receiver = self['@methodsListWidget']) == nil ||        $receiver == undefined) {        self['@methodsListWidget'] = smalltalk.send(smalltalk.HLMethodsListWidget || HLMethodsListWidget, "_on_", [smalltalk.send(self, "_model", [])]);        $1 = self['@methodsListWidget'];    } else {        $1 = self['@methodsListWidget'];    }    return $1;}}),smalltalk.HLBrowser);smalltalk.addMethod("_model",smalltalk.method({selector: "model",fn: function () {    var self = this;    var $1;    if (($receiver = self['@model']) == nil || $receiver == undefined) {        self['@model'] = smalltalk.send(smalltalk.HLBrowserModel || HLBrowserModel, "_new", []);        $1 = self['@model'];    } else {        $1 = self['@model'];    }    return $1;}}),smalltalk.HLBrowser);smalltalk.addMethod("_model_",smalltalk.method({selector: "model:",fn: function (aModel) {    var self = this;    self['@model'] = aModel;    return self;}}),smalltalk.HLBrowser);smalltalk.addMethod("_packagesListWidget",smalltalk.method({selector: "packagesListWidget",fn: function () {    var self = this;    var $1;    if (($receiver = self['@packagesListWidget']) == nil ||        $receiver == undefined) {        self['@packagesListWidget'] = smalltalk.send(smalltalk.HLPackagesListWidget || HLPackagesListWidget, "_on_", [smalltalk.send(self, "_model", [])]);        self['@packagesListWidget'];        $1 = smalltalk.send(self['@packagesListWidget'], "_next_", [smalltalk.send(self, "_classesListWidget", [])]);    } else {        $1 = self['@packagesListWidget'];    }    return $1;}}),smalltalk.HLBrowser);smalltalk.addMethod("_protocolsListWidget",smalltalk.method({selector: "protocolsListWidget",fn: function () {    var self = this;    var $1;    if (($receiver = self['@protocolsListWidget']) == nil ||        $receiver == undefined) {        self['@protocolsListWidget'] = smalltalk.send(smalltalk.HLProtocolsListWidget || HLProtocolsListWidget, "_on_", [smalltalk.send(self, "_model", [])]);        self['@protocolsListWidget'];        $1 = smalltalk.send(self['@protocolsListWidget'], "_next_", [smalltalk.send(self, "_methodsListWidget", [])]);    } else {        $1 = self['@protocolsListWidget'];    }    return $1;}}),smalltalk.HLBrowser);smalltalk.addMethod("_registerBindingsOn_",smalltalk.method({selector: "registerBindingsOn:",fn: function (aBindingGroup) {    var self = this;    var $1, $2;    smalltalk.send(aBindingGroup, "_addGroupKey_labelled_", [66, "Browse"]);    smalltalk.send(aBindingGroup, "_addGroupKey_labelled_", [71, "Go to"]);    $1 = smalltalk.send(aBindingGroup, "_addGroupKey_labelled_", [84, "Toggle"]);    smalltalk.send(smalltalk.send(smalltalk.HLBrowserCommand || HLBrowserCommand, "_withAllSubclasses", []), "_do_", [function (each) {$2 = smalltalk.send(each, "_key", []);if (($receiver = $2) == nil || $receiver == undefined) {return $2;} else {return smalltalk.send(smalltalk.send(aBindingGroup, "_at_", [smalltalk.send(each, "_bindingGroup", [])]), "_add_", [smalltalk.send(smalltalk.send(each, "_on_", [smalltalk.send(self, "_model", [])]), "_asBinding", [])]);}}]);    return self;}}),smalltalk.HLBrowser);smalltalk.addMethod("_renderContentOn_",smalltalk.method({selector: "renderContentOn:",fn: function (html) {    var self = this;    smalltalk.send(html, "_with_", [smalltalk.send(smalltalk.HLContainer || HLContainer, "_with_", [smalltalk.send(smalltalk.HLHorizontalSplitter || HLHorizontalSplitter, "_with_with_", [smalltalk.send(smalltalk.HLVerticalSplitter || HLVerticalSplitter, "_with_with_", [smalltalk.send(smalltalk.HLVerticalSplitter || HLVerticalSplitter, "_with_with_", [smalltalk.send(self, "_packagesListWidget", []), smalltalk.send(self, "_classesListWidget", [])]), smalltalk.send(smalltalk.HLVerticalSplitter || HLVerticalSplitter, "_with_with_", [smalltalk.send(self, "_protocolsListWidget", []), smalltalk.send(self, "_methodsListWidget", [])])]), smalltalk.send(self, "_sourceWidget", [])])])]);    return self;}}),smalltalk.HLBrowser);smalltalk.addMethod("_sourceWidget",smalltalk.method({selector: "sourceWidget",fn: function () {    var self = this;    var $1;    if (($receiver = self['@sourceWidget']) == nil ||        $receiver == undefined) {        self['@sourceWidget'] = smalltalk.send(smalltalk.HLBrowserSourceWidget || HLBrowserSourceWidget, "_on_", [smalltalk.send(self, "_model", [])]);        $1 = self['@sourceWidget'];    } else {        $1 = self['@sourceWidget'];    }    return $1;}}),smalltalk.HLBrowser);smalltalk.HLBrowser.klass.iVarNames = ['nextId'];smalltalk.addMethod("_canBeOpenAsTab",smalltalk.method({selector: "canBeOpenAsTab",fn: function () {    var self = this;    return true;}}),smalltalk.HLBrowser.klass);smalltalk.addMethod("_nextId",smalltalk.method({selector: "nextId",fn: function () {    var self = this;    var $1;    if (($receiver = self['@nextId']) == nil || $receiver == undefined) {        self['@nextId'] = 0;        self['@nextId'];    } else {        self['@nextId'];    }    $1 = smalltalk.send("browser_", "__comma", [smalltalk.send(smalltalk.send(self['@nextId'], "__plus", [1]), "_asString", [])]);    return $1;}}),smalltalk.HLBrowser.klass);smalltalk.addMethod("_tabLabel",smalltalk.method({selector: "tabLabel",fn: function () {    var self = this;    return "Browser";}}),smalltalk.HLBrowser.klass);smalltalk.addMethod("_tabPriority",smalltalk.method({selector: "tabPriority",fn: function () {    var self = this;    return 0;}}),smalltalk.HLBrowser.klass);smalltalk.addClass('HLBrowserListWidget', smalltalk.HLNavigationListWidget, ['model'], 'Helios-Browser');smalltalk.addMethod("_model",smalltalk.method({selector: "model",fn: function () {    var self = this;    return self['@model'];}}),smalltalk.HLBrowserListWidget);smalltalk.addMethod("_model_",smalltalk.method({selector: "model:",fn: function (aBrowserModel) {    var self = this;    self['@model'] = aBrowserModel;    smalltalk.send(self, "_observeModel", []);    return self;}}),smalltalk.HLBrowserListWidget);smalltalk.addMethod("_observeModel",smalltalk.method({selector: "observeModel",fn: function () {    var self = this;    return self;}}),smalltalk.HLBrowserListWidget);smalltalk.addMethod("_on_",smalltalk.method({selector: "on:",fn: function (aModel) {    var self = this;    var $2, $3, $1;    $2 = smalltalk.send(self, "_new", []);    smalltalk.send($2, "_model_", [aModel]);    $3 = smalltalk.send($2, "_yourself", []);    $1 = $3;    return $1;}}),smalltalk.HLBrowserListWidget.klass);smalltalk.addClass('HLClassesListWidget', smalltalk.HLBrowserListWidget, [], 'Helios-Browser');smalltalk.addMethod("_focusMethodsListWidget",smalltalk.method({selector: "focusMethodsListWidget",fn: function () {    var self = this;    smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_announcer", []), "_announce_", [smalltalk.send(smalltalk.HLMethodsListFocus || HLMethodsListFocus, "_new", [])]);    return self;}}),smalltalk.HLClassesListWidget);smalltalk.addMethod("_focusProtocolsListWidget",smalltalk.method({selector: "focusProtocolsListWidget",fn: function () {    var self = this;    smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_announcer", []), "_announce_", [smalltalk.send(smalltalk.HLProtocolsListFocus || HLProtocolsListFocus, "_new", [])]);    return self;}}),smalltalk.HLClassesListWidget);smalltalk.addMethod("_getChildrenOf_",smalltalk.method({selector: "getChildrenOf:",fn: function (aClass) {    var self = this;    var $1;    $1 = smalltalk.send(smalltalk.send(self, "_items", []), "_select_", [function (each) {return smalltalk.send(smalltalk.send(each, "_superclass", []), "__eq", [aClass]);}]);    return $1;}}),smalltalk.HLClassesListWidget);smalltalk.addMethod("_getRootClassesOf_",smalltalk.method({selector: "getRootClassesOf:",fn: function (aCollection) {    var self = this;    var $1;    $1 = smalltalk.send(aCollection, "_select_", [function (each) {return smalltalk.send(smalltalk.send(smalltalk.send(each, "_allSuperclasses", []), "_intersection_", [aCollection]), "_isEmpty", []);}]);    return $1;}}),smalltalk.HLClassesListWidget);smalltalk.addMethod("_iconForItem_",smalltalk.method({selector: "iconForItem:",fn: function (aClass) {    var self = this;    var $2, $1;    $2 = smalltalk.send(smalltalk.send(smalltalk.send(aClass, "_theNonMetaClass", []), "_comment", []), "_isEmpty", []);    if (smalltalk.assert($2)) {        $1 = "icon-question-sign";    } else {        $1 = "icon-none";    }    return $1;}}),smalltalk.HLClassesListWidget);smalltalk.addMethod("_observeModel",smalltalk.method({selector: "observeModel",fn: function () {    var self = this;    var $1, $2;    $1 = smalltalk.send(smalltalk.send(self, "_model", []), "_announcer", []);    smalltalk.send($1, "_on_do_", [smalltalk.HLPackageSelected || HLPackageSelected, function (ann) {return smalltalk.send(self, "_onPackageSelected_", [smalltalk.send(ann, "_item", [])]);}]);    smalltalk.send($1, "_on_do_", [smalltalk.HLShowInstanceToggled || HLShowInstanceToggled, function (ann) {return smalltalk.send(self, "_onShowInstanceToggled", []);}]);    $2 = smalltalk.send($1, "_on_do_", [smalltalk.HLClassSelected || HLClassSelected, function (ann) {return smalltalk.send(self, "_onClassSelected_", [smalltalk.send(ann, "_item", [])]);}]);    return self;}}),smalltalk.HLClassesListWidget);smalltalk.addMethod("_onClassSelected_",smalltalk.method({selector: "onClassSelected:",fn: function (aClass) {    var self = this;    smalltalk.send(self, "_focus", []);    return self;}}),smalltalk.HLClassesListWidget);smalltalk.addMethod("_onPackageSelected_",smalltalk.method({selector: "onPackageSelected:",fn: function (aPackage) {    var self = this;    var $1;    smalltalk.send(self, "_selectedItem_", [nil]);    if (($receiver = aPackage) == nil || $receiver == undefined) {        $1 = [];    } else {        $1 = smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(aPackage, "_classes", []), "_collect_", [function (each) {return smalltalk.send(each, "_theNonMetaClass", []);}]), "_asSet", []), "_asArray", []);    }    smalltalk.send(self, "_items_", [$1]);    smalltalk.send(self, "_refresh", []);    return self;}}),smalltalk.HLClassesListWidget);smalltalk.addMethod("_onShowInstanceToggled",smalltalk.method({selector: "onShowInstanceToggled",fn: function () {    var self = this;    smalltalk.send(self, "_refresh", []);    return self;}}),smalltalk.HLClassesListWidget);smalltalk.addMethod("_renderButtonsOn_",smalltalk.method({selector: "renderButtonsOn:",fn: function (html) {    var self = this;    var $1, $3, $4, $5, $6, $7, $8, $2, $9, $10;    $1 = smalltalk.send(html, "_div", []);    smalltalk.send($1, "_class_", ["btn-group"]);    smalltalk.send($1, "_at_put_", ["data-toggle", "buttons-radio"]);    $2 = smalltalk.send($1, "_with_", [function () {$3 = smalltalk.send(html, "_button", []);smalltalk.send($3, "_class_", [smalltalk.send(smalltalk.String || String, "_streamContents_", [function (str) {smalltalk.send(str, "_nextPutAll_", ["btn"]);$4 = smalltalk.send(self, "_showInstance", []);if (smalltalk.assert($4)) {return smalltalk.send(str, "_nextPutAll_", [" active"]);}}])]);smalltalk.send($3, "_with_", ["Instance"]);$5 = smalltalk.send($3, "_onClick_", [function () {return smalltalk.send(self, "_showInstance_", [true]);}]);$5;$6 = smalltalk.send(html, "_button", []);smalltalk.send($6, "_class_", [smalltalk.send(smalltalk.String || String, "_streamContents_", [function (str) {smalltalk.send(str, "_nextPutAll_", ["btn"]);$7 = smalltalk.send(smalltalk.send(self, "_model", []), "_showInstance", []);if (!smalltalk.assert($7)) {return smalltalk.send(str, "_nextPutAll_", [" active"]);}}])]);smalltalk.send($6, "_with_", ["Class"]);$8 = smalltalk.send($6, "_onClick_", [function () {return smalltalk.send(smalltalk.send(self, "_model", []), "_showInstance_", [false]);}]);return $8;}]);    $9 = smalltalk.send(html, "_button", []);    smalltalk.send($9, "_class_", ["btn"]);    smalltalk.send($9, "_at_put_", ["data-toggle", "button"]);    $10 = smalltalk.send($9, "_with_", ["Comment"]);    return self;}}),smalltalk.HLClassesListWidget);smalltalk.addMethod("_renderItem_level_on_",smalltalk.method({selector: "renderItem:level:on:",fn: function (aClass, anInteger, html) {    var self = this;    var $2, $3, $1;    var li;    li = smalltalk.send(html, "_li", []);    smalltalk.send(li, "_at_put_", ["list-data", smalltalk.send(smalltalk.send(self, "_items", []), "_indexOf_", [aClass])]);    smalltalk.send(li, "_class_", [smalltalk.send(self, "_cssClassForItem_", [aClass])]);    $1 = smalltalk.send(li, "_with_", [function () {$2 = smalltalk.send(html, "_a", []);smalltalk.send($2, "_with_", [function () {smalltalk.send(smalltalk.send(html, "_tag_", ["i"]), "_class_", [smalltalk.send(self, "_iconForItem_", [aClass])]);return smalltalk.send(self, "_renderItemLabel_level_on_", [aClass, anInteger, html]);}]);$3 = smalltalk.send($2, "_onClick_", [function () {return smalltalk.send(self, "_activateListItem_", [smalltalk.send(li, "_asJQuery", [])]);}]);return $3;}]);    smalltalk.send(smalltalk.send(self, "_getChildrenOf_", [aClass]), "_do_", [function (each) {return smalltalk.send(self, "_renderItem_level_on_", [each, smalltalk.send(anInteger, "__plus", [1]), html]);}]);    return self;}}),smalltalk.HLClassesListWidget);smalltalk.addMethod("_renderItem_on_",smalltalk.method({selector: "renderItem:on:",fn: function (aClass, html) {    var self = this;    smalltalk.send(self, "_renderItem_on_", [aClass, html], smalltalk.HLBrowserListWidget);    smalltalk.send(smalltalk.send(self, "_getChildrenOf_", [aClass]), "_do_", [function (each) {return smalltalk.send(self, "_renderItem_level_on_", [each, 1, html]);}]);    return self;}}),smalltalk.HLClassesListWidget);smalltalk.addMethod("_renderItemLabel_level_on_",smalltalk.method({selector: "renderItemLabel:level:on:",fn: function (aClass, anInteger, html) {    var self = this;    smalltalk.send(smalltalk.send(smalltalk.send(html, "_span", []), "_asJQuery", []), "_html_", [smalltalk.send(smalltalk.String || String, "_streamContents_", [function (str) {smalltalk.send(anInteger, "_timesRepeat_", [function () {return smalltalk.send(str, "_nextPutAll_", ["    "]);}]);return smalltalk.send(str, "_nextPutAll_", [smalltalk.send(aClass, "_name", [])]);}])]);    return self;}}),smalltalk.HLClassesListWidget);smalltalk.addMethod("_renderItemLabel_on_",smalltalk.method({selector: "renderItemLabel:on:",fn: function (aClass, html) {    var self = this;    smalltalk.send(self, "_renderItemLabel_level_on_", [aClass, 0, html]);    return self;}}),smalltalk.HLClassesListWidget);smalltalk.addMethod("_renderListOn_",smalltalk.method({selector: "renderListOn:",fn: function (html) {    var self = this;    smalltalk.send(smalltalk.send(self, "_getRootClassesOf_", [smalltalk.send(self, "_items", [])]), "_do_", [function (each) {return smalltalk.send(self, "_renderItem_on_", [each, html]);}]);    return self;}}),smalltalk.HLClassesListWidget);smalltalk.addMethod("_selectItem_",smalltalk.method({selector: "selectItem:",fn: function (aClass) {    var self = this;    smalltalk.send(self, "_selectItem_", [aClass], smalltalk.HLBrowserListWidget);    smalltalk.send(smalltalk.send(self, "_model", []), "_selectedClass_", [aClass]);    return self;}}),smalltalk.HLClassesListWidget);smalltalk.addMethod("_showInstance",smalltalk.method({selector: "showInstance",fn: function () {    var self = this;    var $1;    $1 = smalltalk.send(smalltalk.send(self, "_model", []), "_showInstance", []);    return $1;}}),smalltalk.HLClassesListWidget);smalltalk.addMethod("_showInstance_",smalltalk.method({selector: "showInstance:",fn: function (aBoolean) {    var self = this;    smalltalk.send(smalltalk.send(self, "_model", []), "_showInstance_", [aBoolean]);    return self;}}),smalltalk.HLClassesListWidget);smalltalk.addClass('HLMethodsListWidget', smalltalk.HLBrowserListWidget, ['selectorsCache'], 'Helios-Browser');smalltalk.addMethod("_allProtocol",smalltalk.method({selector: "allProtocol",fn: function () {    var self = this;    var $1;    $1 = smalltalk.send(smalltalk.send(self, "_model", []), "_allProtocol", []);    return $1;}}),smalltalk.HLMethodsListWidget);smalltalk.addMethod("_flushSelectorsCache",smalltalk.method({selector: "flushSelectorsCache",fn: function () {    var self = this;    self['@selectorsCache'] = smalltalk.send(smalltalk.Dictionary || Dictionary, "_new", []);    return self;}}),smalltalk.HLMethodsListWidget);smalltalk.addMethod("_iconForItem_",smalltalk.method({selector: "iconForItem:",fn: function (aCompiledMethod) {    var self = this;    var $1;    var override;    var overriden;    override = smalltalk.send(self, "_isOverride_", [aCompiledMethod]);    overriden = smalltalk.send(self, "_isOverriden_", [aCompiledMethod]);    if (smalltalk.assert(override)) {        if (smalltalk.assert(overriden)) {            $1 = "icon-resize-vertical";        } else {            $1 = "icon-arrow-up";        }    } else {        if (smalltalk.assert(overriden)) {            $1 = "icon-arrow-down";        } else {            $1 = "icon-none";        }    }    return $1;}}),smalltalk.HLMethodsListWidget);smalltalk.addMethod("_initialize",smalltalk.method({selector: "initialize",fn: function () {    var self = this;    smalltalk.send(self, "_initialize", [], smalltalk.HLBrowserListWidget);    smalltalk.send(self, "_flushSelectorsCache", []);    return self;}}),smalltalk.HLMethodsListWidget);smalltalk.addMethod("_isOverride_",smalltalk.method({selector: "isOverride:",fn: function (aMethod) {    var self = this;    var $1;    $1 = smalltalk.send(smalltalk.send(self, "_overrideSelectors", []), "_includes_", [smalltalk.send(aMethod, "_selector", [])]);    return $1;}}),smalltalk.HLMethodsListWidget);smalltalk.addMethod("_isOverriden_",smalltalk.method({selector: "isOverriden:",fn: function (aMethod) {    var self = this;    var $1;    $1 = smalltalk.send(smalltalk.send(self, "_overridenSelectors", []), "_includes_", [smalltalk.send(aMethod, "_selector", [])]);    return $1;}}),smalltalk.HLMethodsListWidget);smalltalk.addMethod("_methodsInProtocol_",smalltalk.method({selector: "methodsInProtocol:",fn: function (aString) {    var self = this;    var $2, $1;    $2 = smalltalk.send(aString, "__eq", [smalltalk.send(self, "_allProtocol", [])]);    if (smalltalk.assert($2)) {        $1 = smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_selectedClass", []), "_methods", []);    } else {        $1 = smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_selectedClass", []), "_methodsInProtocol_", [aString]);    }    return $1;}}),smalltalk.HLMethodsListWidget);smalltalk.addMethod("_observeModel",smalltalk.method({selector: "observeModel",fn: function () {    var self = this;    smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_announcer", []), "_on_do_", [smalltalk.HLProtocolSelected || HLProtocolSelected, function (ann) {return smalltalk.send(self, "_onProtocolSelected_", [smalltalk.send(ann, "_item", [])]);}]);    smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_announcer", []), "_on_do_", [smalltalk.HLShowInstanceToggled || HLShowInstanceToggled, function (ann) {return smalltalk.send(self, "_onProtocolSelected_", [nil]);}]);    smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_announcer", []), "_on_do_", [smalltalk.HLMethodSelected || HLMethodSelected, function (ann) {return smalltalk.send(self, "_onMethodSelected_", [smalltalk.send(ann, "_item", [])]);}]);    return self;}}),smalltalk.HLMethodsListWidget);smalltalk.addMethod("_onMethodSelected_",smalltalk.method({selector: "onMethodSelected:",fn: function (aMethod) {    var self = this;    smalltalk.send(self, "_focus", []);    return self;}}),smalltalk.HLMethodsListWidget);smalltalk.addMethod("_onProtocolSelected_",smalltalk.method({selector: "onProtocolSelected:",fn: function (aString) {    var self = this;    var $2, $1;    smalltalk.send(self, "_selectedItem_", [nil]);    $2 = smalltalk.send(smalltalk.send(self, "_model", []), "_selectedClass", []);    if (($receiver = $2) == nil || $receiver == undefined) {        $1 = [];    } else {        if (($receiver = aString) == nil || $receiver == undefined) {            $1 = [];        } else {            $1 = smalltalk.send(self, "_methodsInProtocol_", [aString]);        }    }    smalltalk.send(self, "_items_", [$1]);    smalltalk.send(self, "_refresh", []);    return self;}}),smalltalk.HLMethodsListWidget);smalltalk.addMethod("_overrideSelectors",smalltalk.method({selector: "overrideSelectors",fn: function () {    var self = this;    var $2, $1;    $1 = smalltalk.send(smalltalk.send(self, "_selectorsCache", []), "_at_ifAbsentPut_", ["override", function () {return smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_selectedClass", []), "_allSuperclasses", []), "_inject_into_", [smalltalk.send(smalltalk.Set || Set, "_new", []), function (acc, each) {smalltalk.send(acc, "_addAll_", [smalltalk.send(each, "_selectors", [])]);$2 = smalltalk.send(acc, "_yourself", []);return $2;}]);}]);    return $1;}}),smalltalk.HLMethodsListWidget);smalltalk.addMethod("_overridenSelectors",smalltalk.method({selector: "overridenSelectors",fn: function () {    var self = this;    var $2, $1;    $1 = smalltalk.send(smalltalk.send(self, "_selectorsCache", []), "_at_ifAbsentPut_", ["overriden", function () {return smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_selectedClass", []), "_allSubclasses", []), "_inject_into_", [smalltalk.send(smalltalk.Set || Set, "_new", []), function (acc, each) {smalltalk.send(acc, "_addAll_", [smalltalk.send(each, "_selectors", [])]);$2 = smalltalk.send(acc, "_yourself", []);return $2;}]);}]);    return $1;}}),smalltalk.HLMethodsListWidget);smalltalk.addMethod("_renderContentOn_",smalltalk.method({selector: "renderContentOn:",fn: function (html) {    var self = this;    var $1, $2, $3;    $1 = smalltalk.send(smalltalk.send(self, "_model", []), "_showInstance", []);    if (smalltalk.assert($1)) {        smalltalk.send(self, "_renderContentOn_", [html], smalltalk.HLBrowserListWidget);    } else {        $2 = smalltalk.send(html, "_div", []);        smalltalk.send($2, "_class_", ["class_side"]);        $3 = smalltalk.send($2, "_with_", [function () {return smalltalk.send(self, "_renderContentOn_", [html], smalltalk.HLBrowserListWidget);}]);    }    smalltalk.send(self, "_flushSelectorsCache", []);    return self;}}),smalltalk.HLMethodsListWidget);smalltalk.addMethod("_renderItemLabel_on_",smalltalk.method({selector: "renderItemLabel:on:",fn: function (aCompiledMethod, html) {    var self = this;    smalltalk.send(html, "_with_", [smalltalk.send(aCompiledMethod, "_selector", [])]);    return self;}}),smalltalk.HLMethodsListWidget);smalltalk.addMethod("_selectItem_",smalltalk.method({selector: "selectItem:",fn: function (aCompiledMethod) {    var self = this;    smalltalk.send(self, "_selectItem_", [aCompiledMethod], smalltalk.HLBrowserListWidget);    smalltalk.send(smalltalk.send(self, "_model", []), "_selectedMethod_", [aCompiledMethod]);    return self;}}),smalltalk.HLMethodsListWidget);smalltalk.addMethod("_selectorsCache",smalltalk.method({selector: "selectorsCache",fn: function () {    var self = this;    return self['@selectorsCache'];}}),smalltalk.HLMethodsListWidget);smalltalk.addClass('HLPackagesListWidget', smalltalk.HLBrowserListWidget, [], 'Helios-Browser');smalltalk.addMethod("_focusClassesListWidget",smalltalk.method({selector: "focusClassesListWidget",fn: function () {    var self = this;    smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_announcer", []), "_announce_", [smalltalk.send(smalltalk.HLClassesListFocus || HLClassesListFocus, "_new", [])]);    return self;}}),smalltalk.HLPackagesListWidget);smalltalk.addMethod("_initializeItems",smalltalk.method({selector: "initializeItems",fn: function () {    var self = this;    var $1;    self['@items'] = smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_packages", []), "_sort_", [function (a, b) {return smalltalk.send(smalltalk.send(a, "_name", []), "__lt", [smalltalk.send(b, "_name", [])]);}]);    $1 = self['@items'];    return $1;}}),smalltalk.HLPackagesListWidget);smalltalk.addMethod("_items",smalltalk.method({selector: "items",fn: function () {    var self = this;    var $1;    if (($receiver = self['@items']) == nil || $receiver == undefined) {        $1 = smalltalk.send(self, "_initializeItems", []);    } else {        $1 = self['@items'];    }    return $1;}}),smalltalk.HLPackagesListWidget);smalltalk.addMethod("_observeModel",smalltalk.method({selector: "observeModel",fn: function () {    var self = this;    smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_announcer", []), "_on_do_", [smalltalk.HLPackageSelected || HLPackageSelected, function (ann) {return smalltalk.send(self, "_onPackageSelected_", [smalltalk.send(ann, "_item", [])]);}]);    return self;}}),smalltalk.HLPackagesListWidget);smalltalk.addMethod("_onPackageSelected_",smalltalk.method({selector: "onPackageSelected:",fn: function (aPackage) {    var self = this;    smalltalk.send(self, "_focus", []);    return self;}}),smalltalk.HLPackagesListWidget);smalltalk.addMethod("_renderButtonsOn_",smalltalk.method({selector: "renderButtonsOn:",fn: function (html) {    var self = this;    var $1, $2, $3, $5, $6, $7, $8, $4, $9, $10;    $1 = smalltalk.send(html, "_span", []);    smalltalk.send($1, "_class_", ["info"]);    $2 = smalltalk.send($1, "_with_", ["Auto commit"]);    $3 = smalltalk.send(html, "_div", []);    smalltalk.send($3, "_class_", ["btn-group switch"]);    smalltalk.send($3, "_at_put_", ["data-toggle", "buttons-radio"]);    $4 = smalltalk.send($3, "_with_", [function () {$5 = smalltalk.send(html, "_button", []);smalltalk.send($5, "_class_", [smalltalk.send(smalltalk.String || String, "_streamContents_", [function (str) {return smalltalk.send(str, "_nextPutAll_", ["btn"]);}])]);$6 = smalltalk.send($5, "_with_", ["On"]);$6;$7 = smalltalk.send(html, "_button", []);smalltalk.send($7, "_class_", [smalltalk.send(smalltalk.String || String, "_streamContents_", [function (str) {return smalltalk.send(str, "_nextPutAll_", ["btn active"]);}])]);$8 = smalltalk.send($7, "_with_", ["Off"]);return $8;}]);    $9 = smalltalk.send(html, "_a", []);    smalltalk.send($9, "_class_", ["btn"]);    $10 = smalltalk.send($9, "_with_", ["Commit"]);    return self;}}),smalltalk.HLPackagesListWidget);smalltalk.addMethod("_selectItem_",smalltalk.method({selector: "selectItem:",fn: function (aPackage) {    var self = this;    smalltalk.send(self, "_selectItem_", [aPackage], smalltalk.HLBrowserListWidget);    smalltalk.send(smalltalk.send(self, "_model", []), "_selectedPackage_", [aPackage]);    return self;}}),smalltalk.HLPackagesListWidget);smalltalk.addClass('HLProtocolsListWidget', smalltalk.HLBrowserListWidget, [], 'Helios-Browser');smalltalk.addMethod("_allProtocol",smalltalk.method({selector: "allProtocol",fn: function () {    var self = this;    var $1;    $1 = smalltalk.send(smalltalk.send(self, "_model", []), "_allProtocol", []);    return $1;}}),smalltalk.HLProtocolsListWidget);smalltalk.addMethod("_observeModel",smalltalk.method({selector: "observeModel",fn: function () {    var self = this;    smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_announcer", []), "_on_do_", [smalltalk.HLClassSelected || HLClassSelected, function (ann) {return smalltalk.send(self, "_onClassSelected_", [smalltalk.send(ann, "_item", [])]);}]);    smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_announcer", []), "_on_do_", [smalltalk.HLShowInstanceToggled || HLShowInstanceToggled, function (ann) {return smalltalk.send(self, "_onClassSelected_", [smalltalk.send(smalltalk.send(self, "_model", []), "_selectedClass", [])]);}]);    smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_announcer", []), "_on_do_", [smalltalk.HLProtocolSelected || HLProtocolSelected, function (ann) {return smalltalk.send(self, "_onProtocolSelected_", [smalltalk.send(ann, "_item", [])]);}]);    return self;}}),smalltalk.HLProtocolsListWidget);smalltalk.addMethod("_onClassSelected_",smalltalk.method({selector: "onClassSelected:",fn: function (aClass) {    var self = this;    var $2, $3, $1;    smalltalk.send(self, "_selectedItem_", [nil]);    if (($receiver = aClass) == nil || $receiver == undefined) {        $1 = smalltalk.send(smalltalk.Array || Array, "_with_", [smalltalk.send(self, "_allProtocol", [])]);    } else {        $2 = smalltalk.send(smalltalk.Array || Array, "_with_", [smalltalk.send(self, "_allProtocol", [])]);        smalltalk.send($2, "_addAll_", [smalltalk.send(aClass, "_protocols", [])]);        $3 = smalltalk.send($2, "_yourself", []);        $1 = $3;    }    smalltalk.send(self, "_items_", [$1]);    smalltalk.send(self, "_refresh", []);    return self;}}),smalltalk.HLProtocolsListWidget);smalltalk.addMethod("_onProtocolSelected_",smalltalk.method({selector: "onProtocolSelected:",fn: function (aString) {    var self = this;    smalltalk.send(self, "_focus", []);    return self;}}),smalltalk.HLProtocolsListWidget);smalltalk.addMethod("_renderContentOn_",smalltalk.method({selector: "renderContentOn:",fn: function (html) {    var self = this;    var $1, $2, $3;    $1 = smalltalk.send(smalltalk.send(self, "_model", []), "_showInstance", []);    if (smalltalk.assert($1)) {        smalltalk.send(self, "_renderContentOn_", [html], smalltalk.HLBrowserListWidget);    } else {        $2 = smalltalk.send(html, "_div", []);        smalltalk.send($2, "_class_", ["class_side"]);        $3 = smalltalk.send($2, "_with_", [function () {return smalltalk.send(self, "_renderContentOn_", [html], smalltalk.HLBrowserListWidget);}]);    }    return self;}}),smalltalk.HLProtocolsListWidget);smalltalk.addMethod("_selectItem_",smalltalk.method({selector: "selectItem:",fn: function (aString) {    var self = this;    smalltalk.send(self, "_selectItem_", [aString], smalltalk.HLBrowserListWidget);    smalltalk.send(smalltalk.send(self, "_model", []), "_selectedProtocol_", [aString]);    return self;}}),smalltalk.HLProtocolsListWidget);smalltalk.addMethod("_selectedItem",smalltalk.method({selector: "selectedItem",fn: function () {    var self = this;    var $1;    $1 = smalltalk.send(self, "_selectedItem", [], smalltalk.HLBrowserListWidget);    return $1;}}),smalltalk.HLProtocolsListWidget);smalltalk.addClass('HLBrowserModel', smalltalk.Object, ['announcer', 'environment', 'selectedPackage', 'selectedClass', 'selectedProtocol', 'selectedMethod', 'showInstance', 'showComment'], 'Helios-Browser');smalltalk.addMethod("_allProtocol",smalltalk.method({selector: "allProtocol",fn: function () {    var self = this;    return "-- All --";}}),smalltalk.HLBrowserModel);smalltalk.addMethod("_announcer",smalltalk.method({selector: "announcer",fn: function () {    var self = this;    var $1;    if (($receiver = self['@announcer']) == nil || $receiver == undefined) {        self['@announcer'] = smalltalk.send(smalltalk.Announcer || Announcer, "_new", []);        $1 = self['@announcer'];    } else {        $1 = self['@announcer'];    }    return $1;}}),smalltalk.HLBrowserModel);smalltalk.addMethod("_environment",smalltalk.method({selector: "environment",fn: function () {    var self = this;    var $1;    if (($receiver = self['@environment']) == nil || $receiver == undefined) {        $1 = smalltalk.send(smalltalk.send(smalltalk.HLManager || HLManager, "_current", []), "_environment", []);    } else {        $1 = self['@environment'];    }    return $1;}}),smalltalk.HLBrowserModel);smalltalk.addMethod("_environment_",smalltalk.method({selector: "environment:",fn: function (anEnvironment) {    var self = this;    self['@environment'] = anEnvironment;    return self;}}),smalltalk.HLBrowserModel);smalltalk.addMethod("_packages",smalltalk.method({selector: "packages",fn: function () {    var self = this;    var $1;    $1 = smalltalk.send(smalltalk.send(self, "_environment", []), "_packages", []);    return $1;}}),smalltalk.HLBrowserModel);smalltalk.addMethod("_selectedClass",smalltalk.method({selector: "selectedClass",fn: function () {    var self = this;    return self['@selectedClass'];}}),smalltalk.HLBrowserModel);smalltalk.addMethod("_selectedClass_",smalltalk.method({selector: "selectedClass:",fn: function (aClass) {    var self = this;    var $1, $2, $3;    $1 = smalltalk.send(self['@selectedClass'], "__eq", [aClass]);    if (!smalltalk.assert($1)) {        if (($receiver = aClass) == nil || $receiver == undefined) {            self['@selectedClass'] = nil;            self['@selectedClass'];        } else {            $2 = smalltalk.send(self, "_showInstance", []);            if (smalltalk.assert($2)) {                self['@selectedClass'] = smalltalk.send(aClass, "_theNonMetaClass", []);                self['@selectedClass'];            } else {                self['@selectedClass'] = smalltalk.send(aClass, "_theMetaClass", []);                self['@selectedClass'];            }        }        smalltalk.send(self, "_selectedMethod_", [nil]);        $3 = smalltalk.send(self, "_selectedProtocol_", [nil]);    }    smalltalk.send(smalltalk.send(self, "_announcer", []), "_announce_", [smalltalk.send(smalltalk.HLClassSelected || HLClassSelected, "_on_", [smalltalk.send(self, "_selectedClass", [])])]);    return self;}}),smalltalk.HLBrowserModel);smalltalk.addMethod("_selectedMethod",smalltalk.method({selector: "selectedMethod",fn: function () {    var self = this;    return self['@selectedMethod'];}}),smalltalk.HLBrowserModel);smalltalk.addMethod("_selectedMethod_",smalltalk.method({selector: "selectedMethod:",fn: function (aCompiledMethod) {    var self = this;    var $1;    $1 = smalltalk.send(self['@selectedMethod'], "__eq", [aCompiledMethod]);    if (!smalltalk.assert($1)) {        self['@selectedMethod'] = aCompiledMethod;        self['@selectedMethod'];    }    smalltalk.send(smalltalk.send(self, "_announcer", []), "_announce_", [smalltalk.send(smalltalk.HLMethodSelected || HLMethodSelected, "_on_", [aCompiledMethod])]);    return self;}}),smalltalk.HLBrowserModel);smalltalk.addMethod("_selectedPackage",smalltalk.method({selector: "selectedPackage",fn: function () {    var self = this;    return self['@selectedPackage'];}}),smalltalk.HLBrowserModel);smalltalk.addMethod("_selectedPackage_",smalltalk.method({selector: "selectedPackage:",fn: function (aPackage) {    var self = this;    var $1;    $1 = smalltalk.send(self['@selectedPackage'], "__eq", [aPackage]);    if (!smalltalk.assert($1)) {        self['@selectedPackage'] = aPackage;        self['@selectedPackage'];        smalltalk.send(self, "_selectedClass_", [nil]);    }    smalltalk.send(smalltalk.send(self, "_announcer", []), "_announce_", [smalltalk.send(smalltalk.HLPackageSelected || HLPackageSelected, "_on_", [aPackage])]);    return self;}}),smalltalk.HLBrowserModel);smalltalk.addMethod("_selectedProtocol",smalltalk.method({selector: "selectedProtocol",fn: function () {    var self = this;    return self['@selectedProtocol'];}}),smalltalk.HLBrowserModel);smalltalk.addMethod("_selectedProtocol_",smalltalk.method({selector: "selectedProtocol:",fn: function (aString) {    var self = this;    var $1;    $1 = smalltalk.send(self['@selectedProtocol'], "__eq", [aString]);    if (!smalltalk.assert($1)) {        self['@selectedProtocol'] = aString;        self['@selectedProtocol'];        smalltalk.send(self, "_selectedMethod_", [nil]);    }    smalltalk.send(smalltalk.send(self, "_announcer", []), "_announce_", [smalltalk.send(smalltalk.HLProtocolSelected || HLProtocolSelected, "_on_", [aString])]);    return self;}}),smalltalk.HLBrowserModel);smalltalk.addMethod("_showComment",smalltalk.method({selector: "showComment",fn: function () {    var self = this;    var $1;    if (($receiver = self['@showComment']) == nil || $receiver == undefined) {        $1 = false;    } else {        $1 = self['@showComment'];    }    return $1;}}),smalltalk.HLBrowserModel);smalltalk.addMethod("_showComment_",smalltalk.method({selector: "showComment:",fn: function (aBoolean) {    var self = this;    self['@showComment'] = aBoolean;    smalltalk.send(smalltalk.send(self, "_announcer", []), "_announce_", [smalltalk.send(smalltalk.HLShowCommentToggled || HLShowCommentToggled, "_new", [])]);    return self;}}),smalltalk.HLBrowserModel);smalltalk.addMethod("_showInstance",smalltalk.method({selector: "showInstance",fn: function () {    var self = this;    var $1;    if (($receiver = self['@showInstance']) == nil ||        $receiver == undefined) {        $1 = true;    } else {        $1 = self['@showInstance'];    }    return $1;}}),smalltalk.HLBrowserModel);smalltalk.addMethod("_showInstance_",smalltalk.method({selector: "showInstance:",fn: function (aBoolean) {    var self = this;    var $1, $2;    self['@showInstance'] = aBoolean;    $1 = smalltalk.send(self, "_selectedClass", []);    if (($receiver = $1) == nil || $receiver == undefined) {    } else {        if (smalltalk.assert(aBoolean)) {            $2 = smalltalk.send(smalltalk.send(self, "_selectedClass", []), "_theNonMetaClass", []);        } else {            $2 = smalltalk.send(smalltalk.send(self, "_selectedClass", []), "_theMetaClass", []);        }        smalltalk.send(self, "_selectedClass_", [$2]);    }    smalltalk.send(smalltalk.send(self, "_announcer", []), "_announce_", [smalltalk.send(smalltalk.HLShowInstanceToggled || HLShowInstanceToggled, "_new", [])]);    return self;}}),smalltalk.HLBrowserModel);smalltalk.addMethod("_on_",smalltalk.method({selector: "on:",fn: function (anEnvironment) {    var self = this;    var $2, $3, $1;    $2 = smalltalk.send(self, "_new", []);    smalltalk.send($2, "_environment_", [anEnvironment]);    $3 = smalltalk.send($2, "_yourself", []);    $1 = $3;    return $1;}}),smalltalk.HLBrowserModel.klass);smalltalk.addClass('HLBrowserSourceWidget', smalltalk.HLWidget, ['model', 'codeWidget'], 'Helios-Browser');smalltalk.addMethod("_codeWidget",smalltalk.method({selector: "codeWidget",fn: function () {    var self = this;    var $1;    if (($receiver = self['@codeWidget']) == nil || $receiver == undefined) {        self['@codeWidget'] = smalltalk.send(smalltalk.HLCodeWidget || HLCodeWidget, "_new", []);        $1 = self['@codeWidget'];    } else {        $1 = self['@codeWidget'];    }    return $1;}}),smalltalk.HLBrowserSourceWidget);smalltalk.addMethod("_contents",smalltalk.method({selector: "contents",fn: function () {    var self = this;    var $1;    $1 = smalltalk.send(smalltalk.send(self, "_sourceArea", []), "_contents", []);    return $1;}}),smalltalk.HLBrowserSourceWidget);smalltalk.addMethod("_contents_",smalltalk.method({selector: "contents:",fn: function (aString) {    var self = this;    smalltalk.send(smalltalk.send(self, "_codeWidget", []), "_contents_", [aString]);    return self;}}),smalltalk.HLBrowserSourceWidget);smalltalk.addMethod("_model",smalltalk.method({selector: "model",fn: function () {    var self = this;    return self['@model'];}}),smalltalk.HLBrowserSourceWidget);smalltalk.addMethod("_model_",smalltalk.method({selector: "model:",fn: function (aBrowserModel) {    var self = this;    self['@model'] = aBrowserModel;    smalltalk.send(self, "_observeModel", []);    return self;}}),smalltalk.HLBrowserSourceWidget);smalltalk.addMethod("_observeModel",smalltalk.method({selector: "observeModel",fn: function () {    var self = this;    smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_announcer", []), "_on_do_", [smalltalk.HLMethodSelected || HLMethodSelected, function (ann) {return smalltalk.send(self, "_onMethodSelected_", [smalltalk.send(ann, "_item", [])]);}]);    smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_announcer", []), "_on_do_", [smalltalk.HLClassSelected || HLClassSelected, function (ann) {return smalltalk.send(self, "_onClassSelected_", [smalltalk.send(ann, "_item", [])]);}]);    smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_announcer", []), "_on_do_", [smalltalk.HLProtocolSelected || HLProtocolSelected, function (ann) {return smalltalk.send(self, "_onProtocolSelected_", [smalltalk.send(ann, "_item", [])]);}]);    return self;}}),smalltalk.HLBrowserSourceWidget);smalltalk.addMethod("_onClassSelected_",smalltalk.method({selector: "onClassSelected:",fn: function (aClass) {    var self = this;    var $1;    if (($receiver = aClass) == nil || $receiver == undefined) {        $1 = smalltalk.send(self, "_contents_", [""]);        return $1;    } else {    }    smalltalk.send(self, "_contents_", [smalltalk.send(aClass, "_definition", [])]);    return self;}}),smalltalk.HLBrowserSourceWidget);smalltalk.addMethod("_onMethodSelected_",smalltalk.method({selector: "onMethodSelected:",fn: function (aCompiledMethod) {    var self = this;    var $1;    if (($receiver = aCompiledMethod) == nil || $receiver == undefined) {        $1 = smalltalk.send(self, "_contents_", [""]);        return $1;    } else {    }    smalltalk.send(self, "_contents_", [smalltalk.send(aCompiledMethod, "_source", [])]);    return self;}}),smalltalk.HLBrowserSourceWidget);smalltalk.addMethod("_onProtocolSelected_",smalltalk.method({selector: "onProtocolSelected:",fn: function (aString) {    var self = this;    var $1, $2;    $1 = smalltalk.send(smalltalk.send(self, "_model", []), "_selectedClass", []);    if (($receiver = $1) == nil || $receiver == undefined) {        $2 = smalltalk.send(self, "_contents_", [""]);        return $2;    } else {    }    smalltalk.send(self, "_contents_", [smalltalk.send(smalltalk.send(smalltalk.send(self, "_model", []), "_selectedClass", []), "_definition", [])]);    return self;}}),smalltalk.HLBrowserSourceWidget);smalltalk.addMethod("_renderContentOn_",smalltalk.method({selector: "renderContentOn:",fn: function (html) {    var self = this;    smalltalk.send(smalltalk.send(self, "_codeWidget", []), "_renderOn_", [html]);    return self;}}),smalltalk.HLBrowserSourceWidget);smalltalk.addMethod("_on_",smalltalk.method({selector: "on:",fn: function (aBrowserModel) {    var self = this;    var $2, $3, $1;    $2 = smalltalk.send(self, "_new", []);    smalltalk.send($2, "_model_", [aBrowserModel]);    $3 = smalltalk.send($2, "_yourself", []);    $1 = $3;    return $1;}}),smalltalk.HLBrowserSourceWidget.klass);
 |