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['@model'], "_subscribe_", [self]); 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( "_packageSelected_", smalltalk.method({ selector: "packageSelected:", 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( "_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.addMethod( "_subscribeTo_", smalltalk.method({ selector: "subscribeTo:", fn: function (anAnnouncer) { var self = this; smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLPackageSelected || HLPackageSelected, function (ann) {return smalltalk.send(self, "_packageSelected_", [smalltalk.send(ann, "_item", [])]);}]); smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLShowInstanceToggled || HLShowInstanceToggled, function (ann) {return smalltalk.send(self, "_refresh", []);}]); smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLClassSelected || HLClassSelected, function (ann) {return smalltalk.send(self, "_focus", []);}]); 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( "_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( "_protocolSelected_", smalltalk.method({ selector: "protocolSelected:", 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( "_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.addMethod( "_subscribeTo_", smalltalk.method({ selector: "subscribeTo:", fn: function (anAnnouncer) { var self = this; smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLProtocolSelected || HLProtocolSelected, function (ann) {return smalltalk.send(self, "_protocolSelected_", [smalltalk.send(ann, "_item", [])]);}]); smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLShowInstanceToggled || HLShowInstanceToggled, function (ann) {return smalltalk.send(self, "_protocolSelected_", [nil]);}]); smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLMethodSelected || HLMethodSelected, function (ann) {return smalltalk.send(self, "_focus", []);}]); return self; } }), 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( "_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.addMethod( "_subscribeTo_", smalltalk.method({ selector: "subscribeTo:", fn: function (anAnnouncer) { var self = this; smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLPackageSelected || HLPackageSelected, function (ann) {return smalltalk.send(self, "_focus", []);}]); 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( "_classSelected_", smalltalk.method({ selector: "classSelected:", 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( "_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.addMethod( "_subscribeTo_", smalltalk.method({ selector: "subscribeTo:", fn: function (anAnnouncer) { var self = this; smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLClassSelected || HLClassSelected, function (ann) {return smalltalk.send(self, "_classSelected_", [smalltalk.send(ann, "_item", [])]);}]); smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLShowInstanceToggled || HLShowInstanceToggled, function (ann) {return smalltalk.send(self, "_classSelected_", [smalltalk.send(smalltalk.send(self, "_model", []), "_selectedClass", [])]);}]); smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLProtocolSelected || HLProtocolSelected, function (ann) {return smalltalk.send(self, "_focus", []);}]); return self; } }), 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( "_beLocal", smalltalk.method({ selector: "beLocal", fn: function (){ var self=this; smalltalk.send(self,"_initializeEnvironment",[]); return self} }), smalltalk.HLBrowserModel); smalltalk.addMethod( "_beRemoteOn_port_", smalltalk.method({ selector: "beRemoteOn:port:", fn: function (anIPAddress,aPort){ var self=this; return self} }), 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(self,"_initializeEnvironment",[]); } 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( "_initializeEnvironment", smalltalk.method({ selector: "initializeEnvironment", fn: function (){ var self=this; var $1; self["@environment"]=smalltalk.send((smalltalk.HLLocalEnvironment || HLLocalEnvironment),"_new",[]); $1=self["@environment"]; return $1; } }), 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]); $3; }; 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( "_subscribe_", smalltalk.method({ selector: "subscribe:", fn: function (aWidget) { var self = this; smalltalk.send(aWidget, "_subscribeTo_", [smalltalk.send(self, "_announcer", [])]); 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', 'sourceArea'], 'Helios-Browser'); smalltalk.addMethod( "_classSelected_", smalltalk.method({ selector: "classSelected:", 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( "_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, "_sourceArea", []), "_contents_", [aString]); return self; } }), smalltalk.HLBrowserSourceWidget); smalltalk.addMethod( "_methodSelected_", smalltalk.method({ selector: "methodSelected:", 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( "_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['@model'], "_subscribe_", [self]); return self; } }), smalltalk.HLBrowserSourceWidget); smalltalk.addMethod( "_protocolSelected_", smalltalk.method({ selector: "protocolSelected:", 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, "_sourceArea", []), "_renderOn_", [html]); return self; } }), smalltalk.HLBrowserSourceWidget); smalltalk.addMethod( "_sourceArea", smalltalk.method({ selector: "sourceArea", fn: function () { var self = this; var $1; if (($receiver = self['@sourceArea']) == nil || $receiver == undefined) { self['@sourceArea'] = smalltalk.send(smalltalk.HLSourceArea || HLSourceArea, "_new", []); $1 = self['@sourceArea']; } else { $1 = self['@sourceArea']; } return $1; } }), smalltalk.HLBrowserSourceWidget); smalltalk.addMethod( "_subscribeTo_", smalltalk.method({ selector: "subscribeTo:", fn: function (anAnnouncer) { var self = this; smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLMethodSelected || HLMethodSelected, function (ann) {return smalltalk.send(self, "_methodSelected_", [smalltalk.send(ann, "_item", [])]);}]); smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLClassSelected || HLClassSelected, function (ann) {return smalltalk.send(self, "_classSelected_", [smalltalk.send(ann, "_item", [])]);}]); smalltalk.send(anAnnouncer, "_on_do_", [smalltalk.HLProtocolSelected || HLProtocolSelected, function (ann) {return smalltalk.send(self, "_protocolSelected_", [smalltalk.send(ann, "_item", [])]);}]); 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);