|
@@ -462,302 +462,421 @@ smalltalk.HLBrowserBottomWidget);
|
|
|
|
|
|
|
|
|
|
|
|
-smalltalk.addClass('HLBrowserListWidget', smalltalk.HLNavigationListWidget, ['model'], 'Helios-Browser');
|
|
|
+smalltalk.addClass('HLBrowserModel', smalltalk.HLToolModel, ['showInstance', 'showComment'], 'Helios-Browser');
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
-selector: "activateListItem:",
|
|
|
-fn: function (anItem){
|
|
|
+selector: "focusOnClasses",
|
|
|
+fn: function (){
|
|
|
var self=this;
|
|
|
+function $HLClassesFocusRequested(){return smalltalk.HLClassesFocusRequested||(typeof HLClassesFocusRequested=="undefined"?nil:HLClassesFocusRequested)}
|
|
|
return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(_st(self)._model())._withChangesDo_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return smalltalk.HLNavigationListWidget.fn.prototype._activateListItem_.apply(_st(self), [anItem]);
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"activateListItem:",{anItem:anItem},smalltalk.HLBrowserListWidget)})},
|
|
|
-messageSends: ["withChangesDo:", "activateListItem:", "model"]}),
|
|
|
-smalltalk.HLBrowserListWidget);
|
|
|
+_st(_st(self)._announcer())._announce_(_st($HLClassesFocusRequested())._new());
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"focusOnClasses",{},smalltalk.HLBrowserModel)})},
|
|
|
+messageSends: ["announce:", "new", "announcer"]}),
|
|
|
+smalltalk.HLBrowserModel);
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
-selector: "activateNextListItem",
|
|
|
+selector: "focusOnMethods",
|
|
|
fn: function (){
|
|
|
var self=this;
|
|
|
+function $HLMethodsFocusRequested(){return smalltalk.HLMethodsFocusRequested||(typeof HLMethodsFocusRequested=="undefined"?nil:HLMethodsFocusRequested)}
|
|
|
return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(_st(self)._model())._withChangesDo_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return smalltalk.HLNavigationListWidget.fn.prototype._activateNextListItem.apply(_st(self), []);
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"activateNextListItem",{},smalltalk.HLBrowserListWidget)})},
|
|
|
-messageSends: ["withChangesDo:", "activateNextListItem", "model"]}),
|
|
|
-smalltalk.HLBrowserListWidget);
|
|
|
+_st(_st(self)._announcer())._announce_(_st($HLMethodsFocusRequested())._new());
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"focusOnMethods",{},smalltalk.HLBrowserModel)})},
|
|
|
+messageSends: ["announce:", "new", "announcer"]}),
|
|
|
+smalltalk.HLBrowserModel);
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
-selector: "activatePreviousListItem",
|
|
|
+selector: "focusOnPackages",
|
|
|
fn: function (){
|
|
|
var self=this;
|
|
|
+function $HLPackagesFocusRequested(){return smalltalk.HLPackagesFocusRequested||(typeof HLPackagesFocusRequested=="undefined"?nil:HLPackagesFocusRequested)}
|
|
|
return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(_st(self)._model())._withChangesDo_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return smalltalk.HLNavigationListWidget.fn.prototype._activatePreviousListItem.apply(_st(self), []);
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"activatePreviousListItem",{},smalltalk.HLBrowserListWidget)})},
|
|
|
-messageSends: ["withChangesDo:", "activatePreviousListItem", "model"]}),
|
|
|
-smalltalk.HLBrowserListWidget);
|
|
|
+_st(_st(self)._announcer())._announce_(_st($HLPackagesFocusRequested())._new());
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"focusOnPackages",{},smalltalk.HLBrowserModel)})},
|
|
|
+messageSends: ["announce:", "new", "announcer"]}),
|
|
|
+smalltalk.HLBrowserModel);
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
-selector: "commandCategory",
|
|
|
+selector: "focusOnProtocols",
|
|
|
fn: function (){
|
|
|
var self=this;
|
|
|
+function $HLProtocolsFocusRequested(){return smalltalk.HLProtocolsFocusRequested||(typeof HLProtocolsFocusRequested=="undefined"?nil:HLProtocolsFocusRequested)}
|
|
|
return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1;
|
|
|
-$1=_st(self)._label();
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"commandCategory",{},smalltalk.HLBrowserListWidget)})},
|
|
|
-messageSends: ["label"]}),
|
|
|
-smalltalk.HLBrowserListWidget);
|
|
|
+_st(_st(self)._announcer())._announce_(_st($HLProtocolsFocusRequested())._new());
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"focusOnProtocols",{},smalltalk.HLBrowserModel)})},
|
|
|
+messageSends: ["announce:", "new", "announcer"]}),
|
|
|
+smalltalk.HLBrowserModel);
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
-selector: "label",
|
|
|
+selector: "focusOnSourceCode",
|
|
|
fn: function (){
|
|
|
var self=this;
|
|
|
+function $HLSourceCodeFocusRequested(){return smalltalk.HLSourceCodeFocusRequested||(typeof HLSourceCodeFocusRequested=="undefined"?nil:HLSourceCodeFocusRequested)}
|
|
|
return smalltalk.withContext(function($ctx1) {
|
|
|
-return "List";
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLBrowserListWidget)})},
|
|
|
-messageSends: []}),
|
|
|
-smalltalk.HLBrowserListWidget);
|
|
|
+_st(_st(self)._announcer())._announce_(_st($HLSourceCodeFocusRequested())._new());
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"focusOnSourceCode",{},smalltalk.HLBrowserModel)})},
|
|
|
+messageSends: ["announce:", "new", "announcer"]}),
|
|
|
+smalltalk.HLBrowserModel);
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
-selector: "menuCommands",
|
|
|
+selector: "isBrowserModel",
|
|
|
fn: function (){
|
|
|
var self=this;
|
|
|
-function $HLBrowserCommand(){return smalltalk.HLBrowserCommand||(typeof HLBrowserCommand=="undefined"?nil:HLBrowserCommand)}
|
|
|
return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1;
|
|
|
-$1=_st(_st(_st($HLBrowserCommand())._concreteClasses())._collect_((function(each){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return _st(each)._for_(_st(self)._model());
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._select_((function(each){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return _st(_st(_st(each)._category()).__eq(_st(self)._commandCategory()))._and_((function(){
|
|
|
-return smalltalk.withContext(function($ctx3) {
|
|
|
-return _st(_st(each)._isAction())._and_((function(){
|
|
|
-return smalltalk.withContext(function($ctx4) {
|
|
|
-return _st(each)._isActive();
|
|
|
-}, function($ctx4) {$ctx4.fillBlock({},$ctx1)})}));
|
|
|
-}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"menuCommands",{},smalltalk.HLBrowserListWidget)})},
|
|
|
-messageSends: ["select:", "and:", "isActive", "isAction", "=", "commandCategory", "category", "collect:", "for:", "model", "concreteClasses"]}),
|
|
|
-smalltalk.HLBrowserListWidget);
|
|
|
+return true;
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"isBrowserModel",{},smalltalk.HLBrowserModel)})},
|
|
|
+messageSends: []}),
|
|
|
+smalltalk.HLBrowserModel);
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
-selector: "model",
|
|
|
+selector: "showComment",
|
|
|
fn: function (){
|
|
|
var self=this;
|
|
|
return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1;
|
|
|
-$1=self["@model"];
|
|
|
+var $2,$1;
|
|
|
+$2=self["@showComment"];
|
|
|
+if(($receiver = $2) == nil || $receiver == undefined){
|
|
|
+$1=false;
|
|
|
+} else {
|
|
|
+$1=$2;
|
|
|
+};
|
|
|
return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"model",{},smalltalk.HLBrowserListWidget)})},
|
|
|
-messageSends: []}),
|
|
|
-smalltalk.HLBrowserListWidget);
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"showComment",{},smalltalk.HLBrowserModel)})},
|
|
|
+messageSends: ["ifNil:"]}),
|
|
|
+smalltalk.HLBrowserModel);
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
-selector: "model:",
|
|
|
-fn: function (aBrowserModel){
|
|
|
+selector: "showComment:",
|
|
|
+fn: function (aBoolean){
|
|
|
var self=this;
|
|
|
+function $HLShowCommentToggled(){return smalltalk.HLShowCommentToggled||(typeof HLShowCommentToggled=="undefined"?nil:HLShowCommentToggled)}
|
|
|
return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1,$2;
|
|
|
-self["@model"]=aBrowserModel;
|
|
|
-$1=self;
|
|
|
-_st($1)._observeSystem();
|
|
|
-$2=_st($1)._observeModel();
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"model:",{aBrowserModel:aBrowserModel},smalltalk.HLBrowserListWidget)})},
|
|
|
-messageSends: ["observeSystem", "observeModel"]}),
|
|
|
-smalltalk.HLBrowserListWidget);
|
|
|
+_st(self)._withChangesDo_((function(){
|
|
|
+return smalltalk.withContext(function($ctx2) {
|
|
|
+self["@showComment"]=aBoolean;
|
|
|
+self["@showComment"];
|
|
|
+return _st(_st(self)._announcer())._announce_(_st($HLShowCommentToggled())._new());
|
|
|
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"showComment:",{aBoolean:aBoolean},smalltalk.HLBrowserModel)})},
|
|
|
+messageSends: ["withChangesDo:", "announce:", "new", "announcer"]}),
|
|
|
+smalltalk.HLBrowserModel);
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
-selector: "observeModel",
|
|
|
+selector: "showInstance",
|
|
|
fn: function (){
|
|
|
var self=this;
|
|
|
return smalltalk.withContext(function($ctx1) {
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"observeModel",{},smalltalk.HLBrowserListWidget)})},
|
|
|
-messageSends: []}),
|
|
|
-smalltalk.HLBrowserListWidget);
|
|
|
+var $2,$1;
|
|
|
+$2=self["@showInstance"];
|
|
|
+if(($receiver = $2) == nil || $receiver == undefined){
|
|
|
+$1=true;
|
|
|
+} else {
|
|
|
+$1=$2;
|
|
|
+};
|
|
|
+return $1;
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"showInstance",{},smalltalk.HLBrowserModel)})},
|
|
|
+messageSends: ["ifNil:"]}),
|
|
|
+smalltalk.HLBrowserModel);
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
-selector: "observeSystem",
|
|
|
-fn: function (){
|
|
|
+selector: "showInstance:",
|
|
|
+fn: function (aBoolean){
|
|
|
var self=this;
|
|
|
+function $HLShowInstanceToggled(){return smalltalk.HLShowInstanceToggled||(typeof HLShowInstanceToggled=="undefined"?nil:HLShowInstanceToggled)}
|
|
|
return smalltalk.withContext(function($ctx1) {
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"observeSystem",{},smalltalk.HLBrowserListWidget)})},
|
|
|
-messageSends: []}),
|
|
|
-smalltalk.HLBrowserListWidget);
|
|
|
+var $1,$2,$4,$3;
|
|
|
+_st(self)._withChangesDo_((function(){
|
|
|
+return smalltalk.withContext(function($ctx2) {
|
|
|
+self["@showInstance"]=aBoolean;
|
|
|
+self["@showInstance"];
|
|
|
+self["@showComment"]=false;
|
|
|
+self["@showComment"];
|
|
|
+$1=_st(self)._selectedClass();
|
|
|
+if(($receiver = $1) == nil || $receiver == undefined){
|
|
|
+$1;
|
|
|
+} else {
|
|
|
+$2=self;
|
|
|
+$4=aBoolean;
|
|
|
+if(smalltalk.assert($4)){
|
|
|
+$3=_st(_st(self)._selectedClass())._theNonMetaClass();
|
|
|
+} else {
|
|
|
+$3=_st(_st(self)._selectedClass())._theMetaClass();
|
|
|
+};
|
|
|
+_st($2)._selectedClass_($3);
|
|
|
+};
|
|
|
+return _st(_st(self)._announcer())._announce_(_st($HLShowInstanceToggled())._new());
|
|
|
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"showInstance:",{aBoolean:aBoolean},smalltalk.HLBrowserModel)})},
|
|
|
+messageSends: ["withChangesDo:", "ifNotNil:", "selectedClass:", "ifTrue:ifFalse:", "theNonMetaClass", "selectedClass", "theMetaClass", "announce:", "new", "announcer"]}),
|
|
|
+smalltalk.HLBrowserModel);
|
|
|
+
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
-selector: "renderContentOn:",
|
|
|
-fn: function (html){
|
|
|
+selector: "on:",
|
|
|
+fn: function (anEnvironment){
|
|
|
var self=this;
|
|
|
return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(self)._renderHeadOn_(html);
|
|
|
-smalltalk.HLNavigationListWidget.fn.prototype._renderContentOn_.apply(_st(self), [html]);
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLBrowserListWidget)})},
|
|
|
-messageSends: ["renderHeadOn:", "renderContentOn:"]}),
|
|
|
-smalltalk.HLBrowserListWidget);
|
|
|
+var $2,$3,$1;
|
|
|
+$2=_st(self)._new();
|
|
|
+_st($2)._environment_(anEnvironment);
|
|
|
+$3=_st($2)._yourself();
|
|
|
+$1=$3;
|
|
|
+return $1;
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"on:",{anEnvironment:anEnvironment},smalltalk.HLBrowserModel.klass)})},
|
|
|
+messageSends: ["environment:", "new", "yourself"]}),
|
|
|
+smalltalk.HLBrowserModel.klass);
|
|
|
+
|
|
|
|
|
|
+smalltalk.addClass('HLClassCache', smalltalk.Object, ['class', 'selectorsCache', 'overrideCache', 'overriddenCache'], 'Helios-Browser');
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
-selector: "renderHeadOn:",
|
|
|
-fn: function (html){
|
|
|
+selector: "invalidateChildrenSelector:",
|
|
|
+fn: function (aSelector){
|
|
|
var self=this;
|
|
|
return smalltalk.withContext(function($ctx1) {
|
|
|
var $1,$2;
|
|
|
-$1=_st(html)._div();
|
|
|
-_st($1)._class_("list-label");
|
|
|
-$2=_st($1)._with_((function(){
|
|
|
+_st(_st(_st(self)._theClass())._subclasses())._do_((function(each){
|
|
|
return smalltalk.withContext(function($ctx2) {
|
|
|
-_st(html)._with_(_st(self)._label());
|
|
|
-return _st(self)._renderMenuOn_(html);
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"renderHeadOn:",{html:html},smalltalk.HLBrowserListWidget)})},
|
|
|
-messageSends: ["class:", "div", "with:", "label", "renderMenuOn:"]}),
|
|
|
-smalltalk.HLBrowserListWidget);
|
|
|
+$1=_st(_st(self)._selectorsCache())._cacheFor_(each);
|
|
|
+_st($1)._removeSelector_(aSelector);
|
|
|
+$2=_st($1)._invalidateChildrenSelector_(aSelector);
|
|
|
+return $2;
|
|
|
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"invalidateChildrenSelector:",{aSelector:aSelector},smalltalk.HLClassCache)})},
|
|
|
+messageSends: ["do:", "removeSelector:", "cacheFor:", "selectorsCache", "invalidateChildrenSelector:", "subclasses", "theClass"]}),
|
|
|
+smalltalk.HLClassCache);
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
-selector: "renderMenuOn:",
|
|
|
-fn: function (html){
|
|
|
+selector: "invalidateParentSelector:",
|
|
|
+fn: function (aSelector){
|
|
|
var self=this;
|
|
|
-var commands;
|
|
|
return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1,$2,$3,$5,$6,$7,$9,$10,$8,$4;
|
|
|
-commands=_st(self)._menuCommands();
|
|
|
-$1=_st(commands)._isEmpty();
|
|
|
-if(smalltalk.assert($1)){
|
|
|
-$2=self;
|
|
|
-return $2;
|
|
|
+var $1,$2,$3;
|
|
|
+$1=_st(_st(self)._theClass())._superclass();
|
|
|
+if(($receiver = $1) == nil || $receiver == undefined){
|
|
|
+$1;
|
|
|
+} else {
|
|
|
+$2=_st(_st(self)._selectorsCache())._cacheFor_(_st(_st(self)._theClass())._superclass());
|
|
|
+_st($2)._removeSelector_(aSelector);
|
|
|
+$3=_st($2)._invalidateParentSelector_(aSelector);
|
|
|
+$3;
|
|
|
};
|
|
|
-$3=_st(html)._div();
|
|
|
-_st($3)._class_("btn-group cog");
|
|
|
-$4=_st($3)._with_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-$5=_st(html)._a();
|
|
|
-_st($5)._class_("btn dropdown-toggle");
|
|
|
-_st($5)._at_put_("data-toggle","dropdown");
|
|
|
-$6=_st($5)._with_((function(){
|
|
|
-return smalltalk.withContext(function($ctx3) {
|
|
|
-return _st(_st(html)._tag_("i"))._class_("icon-cog");
|
|
|
-}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
|
|
|
-$6;
|
|
|
-$7=_st(html)._ul();
|
|
|
-_st($7)._class_("dropdown-menu pull-right");
|
|
|
-$8=_st($7)._with_((function(){
|
|
|
-return smalltalk.withContext(function($ctx3) {
|
|
|
-return _st(_st(self)._menuCommands())._do_((function(each){
|
|
|
-return smalltalk.withContext(function($ctx4) {
|
|
|
-return _st(_st(html)._li())._with_((function(){
|
|
|
-return smalltalk.withContext(function($ctx5) {
|
|
|
-$9=_st(html)._a();
|
|
|
-_st($9)._with_(_st(each)._menuLabel());
|
|
|
-$10=_st($9)._onClick_((function(){
|
|
|
-return smalltalk.withContext(function($ctx6) {
|
|
|
-return _st(self)._execute_(each);
|
|
|
-}, function($ctx6) {$ctx6.fillBlock({},$ctx1)})}));
|
|
|
-return $10;
|
|
|
-}, function($ctx5) {$ctx5.fillBlock({},$ctx1)})}));
|
|
|
-}, function($ctx4) {$ctx4.fillBlock({each:each},$ctx1)})}));
|
|
|
-}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
|
|
|
-return $8;
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"renderMenuOn:",{html:html,commands:commands},smalltalk.HLBrowserListWidget)})},
|
|
|
-messageSends: ["menuCommands", "ifTrue:", "isEmpty", "class:", "div", "with:", "a", "at:put:", "tag:", "ul", "do:", "menuLabel", "onClick:", "execute:", "li"]}),
|
|
|
-smalltalk.HLBrowserListWidget);
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"invalidateParentSelector:",{aSelector:aSelector},smalltalk.HLClassCache)})},
|
|
|
+messageSends: ["ifNotNil:", "removeSelector:", "cacheFor:", "superclass", "theClass", "selectorsCache", "invalidateParentSelector:"]}),
|
|
|
+smalltalk.HLClassCache);
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
-selector: "selectedItem:",
|
|
|
-fn: function (anItem){
|
|
|
+selector: "invalidateSelector:",
|
|
|
+fn: function (aSelector){
|
|
|
var self=this;
|
|
|
return smalltalk.withContext(function($ctx1) {
|
|
|
-smalltalk.HLNavigationListWidget.fn.prototype._selectedItem_.apply(_st(self), [anItem]);
|
|
|
-_st(self)._updateMenu();
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"selectedItem:",{anItem:anItem},smalltalk.HLBrowserListWidget)})},
|
|
|
-messageSends: ["selectedItem:", "updateMenu"]}),
|
|
|
-smalltalk.HLBrowserListWidget);
|
|
|
+var $1,$2;
|
|
|
+$1=self;
|
|
|
+_st($1)._invalidateParentSelector_(aSelector);
|
|
|
+_st($1)._invalidateChildrenSelector_(aSelector);
|
|
|
+$2=_st($1)._removeSelector_(aSelector);
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"invalidateSelector:",{aSelector:aSelector},smalltalk.HLClassCache)})},
|
|
|
+messageSends: ["invalidateParentSelector:", "invalidateChildrenSelector:", "removeSelector:"]}),
|
|
|
+smalltalk.HLClassCache);
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
-selector: "updateMenu",
|
|
|
-fn: function (){
|
|
|
+selector: "isOverridden:",
|
|
|
+fn: function (aMethod){
|
|
|
var self=this;
|
|
|
return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(_st(_st(_st(self)._wrapper())._asJQuery())._find_(".cog"))._remove();
|
|
|
-_st((function(html){
|
|
|
+var $1;
|
|
|
+$1=_st(_st(self)._overriddenCache())._at_ifAbsentPut_(_st(aMethod)._selector(),(function(){
|
|
|
return smalltalk.withContext(function($ctx2) {
|
|
|
-return _st(self)._renderMenuOn_(html);
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}))._appendToJQuery_(_st(_st(_st(self)._wrapper())._asJQuery())._find_(".list-label"));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"updateMenu",{},smalltalk.HLBrowserListWidget)})},
|
|
|
-messageSends: ["remove", "find:", "asJQuery", "wrapper", "appendToJQuery:", "renderMenuOn:"]}),
|
|
|
-smalltalk.HLBrowserListWidget);
|
|
|
-
|
|
|
+return _st(aMethod)._isOverridden();
|
|
|
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
+return $1;
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"isOverridden:",{aMethod:aMethod},smalltalk.HLClassCache)})},
|
|
|
+messageSends: ["at:ifAbsentPut:", "selector", "isOverridden", "overriddenCache"]}),
|
|
|
+smalltalk.HLClassCache);
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
-selector: "on:",
|
|
|
-fn: function (aModel){
|
|
|
+selector: "isOverride:",
|
|
|
+fn: function (aMethod){
|
|
|
var self=this;
|
|
|
return smalltalk.withContext(function($ctx1) {
|
|
|
-var $2,$3,$1;
|
|
|
-$2=_st(self)._new();
|
|
|
-_st($2)._model_(aModel);
|
|
|
-$3=_st($2)._yourself();
|
|
|
-$1=$3;
|
|
|
+var $1;
|
|
|
+$1=_st(_st(self)._overrideCache())._at_ifAbsentPut_(_st(aMethod)._selector(),(function(){
|
|
|
+return smalltalk.withContext(function($ctx2) {
|
|
|
+return _st(aMethod)._isOverride();
|
|
|
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"on:",{aModel:aModel},smalltalk.HLBrowserListWidget.klass)})},
|
|
|
-messageSends: ["model:", "new", "yourself"]}),
|
|
|
-smalltalk.HLBrowserListWidget.klass);
|
|
|
-
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"isOverride:",{aMethod:aMethod},smalltalk.HLClassCache)})},
|
|
|
+messageSends: ["at:ifAbsentPut:", "selector", "isOverride", "overrideCache"]}),
|
|
|
+smalltalk.HLClassCache);
|
|
|
|
|
|
-smalltalk.addClass('HLClassesListWidget', smalltalk.HLBrowserListWidget, [], 'Helios-Browser');
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
-selector: "focusMethodsListWidget",
|
|
|
+selector: "overriddenCache",
|
|
|
fn: function (){
|
|
|
var self=this;
|
|
|
-function $HLMethodsListFocus(){return smalltalk.HLMethodsListFocus||(typeof HLMethodsListFocus=="undefined"?nil:HLMethodsListFocus)}
|
|
|
+function $HashedCollection(){return smalltalk.HashedCollection||(typeof HashedCollection=="undefined"?nil:HashedCollection)}
|
|
|
return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(_st(_st(self)._model())._announcer())._announce_(_st($HLMethodsListFocus())._new());
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"focusMethodsListWidget",{},smalltalk.HLClassesListWidget)})},
|
|
|
-messageSends: ["announce:", "new", "announcer", "model"]}),
|
|
|
-smalltalk.HLClassesListWidget);
|
|
|
+var $2,$1;
|
|
|
+$2=self["@overriddenCache"];
|
|
|
+if(($receiver = $2) == nil || $receiver == undefined){
|
|
|
+self["@overriddenCache"]=_st($HashedCollection())._new();
|
|
|
+$1=self["@overriddenCache"];
|
|
|
+} else {
|
|
|
+$1=$2;
|
|
|
+};
|
|
|
+return $1;
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"overriddenCache",{},smalltalk.HLClassCache)})},
|
|
|
+messageSends: ["ifNil:", "new"]}),
|
|
|
+smalltalk.HLClassCache);
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
-selector: "focusProtocolsListWidget",
|
|
|
+selector: "overrideCache",
|
|
|
fn: function (){
|
|
|
var self=this;
|
|
|
-function $HLProtocolsListFocus(){return smalltalk.HLProtocolsListFocus||(typeof HLProtocolsListFocus=="undefined"?nil:HLProtocolsListFocus)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(_st(_st(self)._model())._announcer())._announce_(_st($HLProtocolsListFocus())._new());
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"focusProtocolsListWidget",{},smalltalk.HLClassesListWidget)})},
|
|
|
-messageSends: ["announce:", "new", "announcer", "model"]}),
|
|
|
-smalltalk.HLClassesListWidget);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "getChildrenOf:",
|
|
|
-fn: function (aClass){
|
|
|
-var self=this;
|
|
|
+function $HashedCollection(){return smalltalk.HashedCollection||(typeof HashedCollection=="undefined"?nil:HashedCollection)}
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
+var $2,$1;
|
|
|
+$2=self["@overrideCache"];
|
|
|
+if(($receiver = $2) == nil || $receiver == undefined){
|
|
|
+self["@overrideCache"]=_st($HashedCollection())._new();
|
|
|
+$1=self["@overrideCache"];
|
|
|
+} else {
|
|
|
+$1=$2;
|
|
|
+};
|
|
|
+return $1;
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"overrideCache",{},smalltalk.HLClassCache)})},
|
|
|
+messageSends: ["ifNil:", "new"]}),
|
|
|
+smalltalk.HLClassCache);
|
|
|
+
|
|
|
+smalltalk.addMethod(
|
|
|
+smalltalk.method({
|
|
|
+selector: "removeSelector:",
|
|
|
+fn: function (aSelector){
|
|
|
+var self=this;
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
+_st(_st(self)._overriddenCache())._removeKey_ifAbsent_(aSelector,(function(){
|
|
|
+return smalltalk.withContext(function($ctx2) {
|
|
|
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
+_st(_st(self)._overrideCache())._removeKey_ifAbsent_(aSelector,(function(){
|
|
|
+return smalltalk.withContext(function($ctx2) {
|
|
|
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"removeSelector:",{aSelector:aSelector},smalltalk.HLClassCache)})},
|
|
|
+messageSends: ["removeKey:ifAbsent:", "overriddenCache", "overrideCache"]}),
|
|
|
+smalltalk.HLClassCache);
|
|
|
+
|
|
|
+smalltalk.addMethod(
|
|
|
+smalltalk.method({
|
|
|
+selector: "selectorsCache",
|
|
|
+fn: function (){
|
|
|
+var self=this;
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
+var $1;
|
|
|
+$1=self["@selectorsCache"];
|
|
|
+return $1;
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"selectorsCache",{},smalltalk.HLClassCache)})},
|
|
|
+messageSends: []}),
|
|
|
+smalltalk.HLClassCache);
|
|
|
+
|
|
|
+smalltalk.addMethod(
|
|
|
+smalltalk.method({
|
|
|
+selector: "selectorsCache:",
|
|
|
+fn: function (aCache){
|
|
|
+var self=this;
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
+self["@selectorsCache"]=aCache;
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"selectorsCache:",{aCache:aCache},smalltalk.HLClassCache)})},
|
|
|
+messageSends: []}),
|
|
|
+smalltalk.HLClassCache);
|
|
|
+
|
|
|
+smalltalk.addMethod(
|
|
|
+smalltalk.method({
|
|
|
+selector: "theClass",
|
|
|
+fn: function (){
|
|
|
+var self=this;
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
+var $1;
|
|
|
+$1=self["@class"];
|
|
|
+return $1;
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"theClass",{},smalltalk.HLClassCache)})},
|
|
|
+messageSends: []}),
|
|
|
+smalltalk.HLClassCache);
|
|
|
+
|
|
|
+smalltalk.addMethod(
|
|
|
+smalltalk.method({
|
|
|
+selector: "theClass:",
|
|
|
+fn: function (aClass){
|
|
|
+var self=this;
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
+self["@class"]=aClass;
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"theClass:",{aClass:aClass},smalltalk.HLClassCache)})},
|
|
|
+messageSends: []}),
|
|
|
+smalltalk.HLClassCache);
|
|
|
+
|
|
|
+
|
|
|
+smalltalk.addMethod(
|
|
|
+smalltalk.method({
|
|
|
+selector: "on:selectorsCache:",
|
|
|
+fn: function (aClass,aSelectorsCache){
|
|
|
+var self=this;
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
+var $2,$3,$1;
|
|
|
+$2=_st(self)._new();
|
|
|
+_st($2)._theClass_(aClass);
|
|
|
+_st($2)._selectorsCache_(aSelectorsCache);
|
|
|
+$3=_st($2)._yourself();
|
|
|
+$1=$3;
|
|
|
+return $1;
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"on:selectorsCache:",{aClass:aClass,aSelectorsCache:aSelectorsCache},smalltalk.HLClassCache.klass)})},
|
|
|
+messageSends: ["theClass:", "new", "selectorsCache:", "yourself"]}),
|
|
|
+smalltalk.HLClassCache.klass);
|
|
|
+
|
|
|
+
|
|
|
+smalltalk.addClass('HLClassesListWidget', smalltalk.HLToolListWidget, [], 'Helios-Browser');
|
|
|
+smalltalk.addMethod(
|
|
|
+smalltalk.method({
|
|
|
+selector: "focusMethodsListWidget",
|
|
|
+fn: function (){
|
|
|
+var self=this;
|
|
|
+function $HLMethodsListFocus(){return smalltalk.HLMethodsListFocus||(typeof HLMethodsListFocus=="undefined"?nil:HLMethodsListFocus)}
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
+_st(_st(_st(self)._model())._announcer())._announce_(_st($HLMethodsListFocus())._new());
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"focusMethodsListWidget",{},smalltalk.HLClassesListWidget)})},
|
|
|
+messageSends: ["announce:", "new", "announcer", "model"]}),
|
|
|
+smalltalk.HLClassesListWidget);
|
|
|
+
|
|
|
+smalltalk.addMethod(
|
|
|
+smalltalk.method({
|
|
|
+selector: "focusProtocolsListWidget",
|
|
|
+fn: function (){
|
|
|
+var self=this;
|
|
|
+function $HLProtocolsListFocus(){return smalltalk.HLProtocolsListFocus||(typeof HLProtocolsListFocus=="undefined"?nil:HLProtocolsListFocus)}
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
+_st(_st(_st(self)._model())._announcer())._announce_(_st($HLProtocolsListFocus())._new());
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"focusProtocolsListWidget",{},smalltalk.HLClassesListWidget)})},
|
|
|
+messageSends: ["announce:", "new", "announcer", "model"]}),
|
|
|
+smalltalk.HLClassesListWidget);
|
|
|
+
|
|
|
+smalltalk.addMethod(
|
|
|
+smalltalk.method({
|
|
|
+selector: "getChildrenOf:",
|
|
|
+fn: function (aClass){
|
|
|
+var self=this;
|
|
|
return smalltalk.withContext(function($ctx1) {
|
|
|
var $1;
|
|
|
$1=_st(_st(self)._items())._select_((function(each){
|
|
@@ -1149,7 +1268,7 @@ selector: "renderItem:on:",
|
|
|
fn: function (aClass,html){
|
|
|
var self=this;
|
|
|
return smalltalk.withContext(function($ctx1) {
|
|
|
-smalltalk.HLBrowserListWidget.fn.prototype._renderItem_on_.apply(_st(self), [aClass,html]);
|
|
|
+smalltalk.HLToolListWidget.fn.prototype._renderItem_on_.apply(_st(self), [aClass,html]);
|
|
|
_st(_st(self)._getChildrenOf_(aClass))._do_((function(each){
|
|
|
return smalltalk.withContext(function($ctx2) {
|
|
|
return _st(self)._renderItem_level_on_(each,(1),html);
|
|
@@ -1318,7 +1437,79 @@ smalltalk.HLClassesListWidget);
|
|
|
|
|
|
|
|
|
|
|
|
-smalltalk.addClass('HLMethodsListWidget', smalltalk.HLBrowserListWidget, ['selectorsCache'], 'Helios-Browser');
|
|
|
+smalltalk.addClass('HLDocumentationWidget', smalltalk.HLFocusableWidget, ['model'], 'Helios-Browser');
|
|
|
+smalltalk.addMethod(
|
|
|
+smalltalk.method({
|
|
|
+selector: "defaultDocumentation",
|
|
|
+fn: function (){
|
|
|
+var self=this;
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
+return "#No documentation available. \x0a##That's bad. Seriously.";
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"defaultDocumentation",{},smalltalk.HLDocumentationWidget)})},
|
|
|
+messageSends: []}),
|
|
|
+smalltalk.HLDocumentationWidget);
|
|
|
+
|
|
|
+smalltalk.addMethod(
|
|
|
+smalltalk.method({
|
|
|
+selector: "documentation",
|
|
|
+fn: function (){
|
|
|
+var self=this;
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
+var $2,$1;
|
|
|
+$2=_st(_st(_st(_st(self)._model())._selectedClass())._theNonMetaClass())._comment();
|
|
|
+if(($receiver = $2) == nil || $receiver == undefined){
|
|
|
+$1=_st(self)._defaultDocumentation();
|
|
|
+} else {
|
|
|
+$1=$2;
|
|
|
+};
|
|
|
+return $1;
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"documentation",{},smalltalk.HLDocumentationWidget)})},
|
|
|
+messageSends: ["ifNil:", "defaultDocumentation", "comment", "theNonMetaClass", "selectedClass", "model"]}),
|
|
|
+smalltalk.HLDocumentationWidget);
|
|
|
+
|
|
|
+smalltalk.addMethod(
|
|
|
+smalltalk.method({
|
|
|
+selector: "model",
|
|
|
+fn: function (){
|
|
|
+var self=this;
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
+var $1;
|
|
|
+$1=self["@model"];
|
|
|
+return $1;
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"model",{},smalltalk.HLDocumentationWidget)})},
|
|
|
+messageSends: []}),
|
|
|
+smalltalk.HLDocumentationWidget);
|
|
|
+
|
|
|
+smalltalk.addMethod(
|
|
|
+smalltalk.method({
|
|
|
+selector: "model:",
|
|
|
+fn: function (aModel){
|
|
|
+var self=this;
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
+self["@model"]=aModel;
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"model:",{aModel:aModel},smalltalk.HLDocumentationWidget)})},
|
|
|
+messageSends: []}),
|
|
|
+smalltalk.HLDocumentationWidget);
|
|
|
+
|
|
|
+smalltalk.addMethod(
|
|
|
+smalltalk.method({
|
|
|
+selector: "renderContentOn:",
|
|
|
+fn: function (html){
|
|
|
+var self=this;
|
|
|
+function $Showdown(){return smalltalk.Showdown||(typeof Showdown=="undefined"?nil:Showdown)}
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
+var $1,$2;
|
|
|
+$1=_st(html)._div();
|
|
|
+_st($1)._class_("markdown");
|
|
|
+$2=_st($1)._asJQuery();
|
|
|
+_st($2)._html_(_st(_st(_st($Showdown())._at_("converter"))._new())._makeHtml_(_st(self)._documentation()));
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLDocumentationWidget)})},
|
|
|
+messageSends: ["html:", "makeHtml:", "documentation", "new", "at:", "class:", "div", "asJQuery"]}),
|
|
|
+smalltalk.HLDocumentationWidget);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+smalltalk.addClass('HLMethodsListWidget', smalltalk.HLToolListWidget, ['selectorsCache'], 'Helios-Browser');
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
selector: "allProtocol",
|
|
@@ -1729,13 +1920,13 @@ return smalltalk.withContext(function($ctx1) {
|
|
|
var $1,$2,$3;
|
|
|
$1=_st(_st(self)._model())._showInstance();
|
|
|
if(smalltalk.assert($1)){
|
|
|
-smalltalk.HLBrowserListWidget.fn.prototype._renderContentOn_.apply(_st(self), [html]);
|
|
|
+smalltalk.HLToolListWidget.fn.prototype._renderContentOn_.apply(_st(self), [html]);
|
|
|
} else {
|
|
|
$2=_st(html)._div();
|
|
|
_st($2)._class_("class_side");
|
|
|
$3=_st($2)._with_((function(){
|
|
|
return smalltalk.withContext(function($ctx2) {
|
|
|
-return smalltalk.HLBrowserListWidget.fn.prototype._renderContentOn_.apply(_st(self), [html]);
|
|
|
+return smalltalk.HLToolListWidget.fn.prototype._renderContentOn_.apply(_st(self), [html]);
|
|
|
}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
$3;
|
|
|
};
|
|
@@ -1850,7 +2041,7 @@ messageSends: ["current"]}),
|
|
|
smalltalk.HLMethodsListWidget.klass);
|
|
|
|
|
|
|
|
|
-smalltalk.addClass('HLPackagesListWidget', smalltalk.HLBrowserListWidget, [], 'Helios-Browser');
|
|
|
+smalltalk.addClass('HLPackagesListWidget', smalltalk.HLToolListWidget, [], 'Helios-Browser');
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
selector: "commitPackage",
|
|
@@ -2053,7 +2244,7 @@ smalltalk.HLPackagesListWidget);
|
|
|
|
|
|
|
|
|
|
|
|
-smalltalk.addClass('HLProtocolsListWidget', smalltalk.HLBrowserListWidget, [], 'Helios-Browser');
|
|
|
+smalltalk.addClass('HLProtocolsListWidget', smalltalk.HLToolListWidget, [], 'Helios-Browser');
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
selector: "allProtocol",
|
|
@@ -2234,13 +2425,13 @@ return smalltalk.withContext(function($ctx1) {
|
|
|
var $1,$2,$3;
|
|
|
$1=_st(_st(self)._model())._showInstance();
|
|
|
if(smalltalk.assert($1)){
|
|
|
-smalltalk.HLBrowserListWidget.fn.prototype._renderContentOn_.apply(_st(self), [html]);
|
|
|
+smalltalk.HLToolListWidget.fn.prototype._renderContentOn_.apply(_st(self), [html]);
|
|
|
} else {
|
|
|
$2=_st(html)._div();
|
|
|
_st($2)._class_("class_side");
|
|
|
$3=_st($2)._with_((function(){
|
|
|
return smalltalk.withContext(function($ctx2) {
|
|
|
-return smalltalk.HLBrowserListWidget.fn.prototype._renderContentOn_.apply(_st(self), [html]);
|
|
|
+return smalltalk.HLToolListWidget.fn.prototype._renderContentOn_.apply(_st(self), [html]);
|
|
|
}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
$3;
|
|
|
};
|
|
@@ -2266,7 +2457,7 @@ fn: function (){
|
|
|
var self=this;
|
|
|
return smalltalk.withContext(function($ctx1) {
|
|
|
var $1;
|
|
|
-$1=smalltalk.HLBrowserListWidget.fn.prototype._selectedItem.apply(_st(self), []);
|
|
|
+$1=smalltalk.HLToolListWidget.fn.prototype._selectedItem.apply(_st(self), []);
|
|
|
return $1;
|
|
|
}, function($ctx1) {$ctx1.fill(self,"selectedItem",{},smalltalk.HLProtocolsListWidget)})},
|
|
|
messageSends: ["selectedItem"]}),
|
|
@@ -2308,1148 +2499,6 @@ smalltalk.HLProtocolsListWidget);
|
|
|
|
|
|
|
|
|
|
|
|
-smalltalk.addClass('HLBrowserModel', smalltalk.HLModel, ['selectedPackage', 'selectedClass', 'selectedProtocol', 'selectedSelector', 'showInstance', 'showComment'], 'Helios-Browser');
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "addInstVarNamed:",
|
|
|
-fn: function (aString){
|
|
|
-var self=this;
|
|
|
-function $HLInstVarAdded(){return smalltalk.HLInstVarAdded||(typeof HLInstVarAdded=="undefined"?nil:HLInstVarAdded)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1,$2;
|
|
|
-_st(_st(self)._environment())._addInstVarNamed_to_(aString,_st(self)._selectedClass());
|
|
|
-$1=_st($HLInstVarAdded())._new();
|
|
|
-_st($1)._theClass_(_st(self)._selectedClass());
|
|
|
-_st($1)._variableName_(aString);
|
|
|
-$2=_st($1)._yourself();
|
|
|
-_st(_st(self)._announcer())._announce_($2);
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"addInstVarNamed:",{aString:aString},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["addInstVarNamed:to:", "selectedClass", "environment", "announce:", "theClass:", "new", "variableName:", "yourself", "announcer"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "allProtocol",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-return "-- all --";
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"allProtocol",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: []}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "allSelectors",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1;
|
|
|
-$1=_st(_st(self)._environment())._allSelectors();
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"allSelectors",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["allSelectors", "environment"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "availableClassNames",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1;
|
|
|
-$1=_st(_st(self)._environment())._availableClassNames();
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"availableClassNames",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["availableClassNames", "environment"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "availablePackageNames",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1;
|
|
|
-$1=_st(_st(self)._environment())._availablePackageNames();
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"availablePackageNames",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["availablePackageNames", "environment"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "availablePackages",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1;
|
|
|
-$1=_st(_st(self)._environment())._availablePackageNames();
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"availablePackages",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["availablePackageNames", "environment"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "availableProtocols",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1;
|
|
|
-$1=_st(_st(self)._environment())._availableProtocolsFor_(_st(self)._selectedClass());
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"availableProtocols",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["availableProtocolsFor:", "selectedClass", "environment"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "commitPackage",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(self)._withHelperLabelled_do_(_st(_st("Committing package ").__comma(_st(_st(self)._selectedPackage())._name())).__comma("..."),(function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return _st(_st(self)._environment())._commitPackage_(_st(self)._selectedPackage());
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"commitPackage",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["withHelperLabelled:do:", ",", "name", "selectedPackage", "commitPackage:", "environment"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "compilationProtocol",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-var currentProtocol;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1,$2,$4,$3;
|
|
|
-currentProtocol=_st(self)._selectedProtocol();
|
|
|
-$1=currentProtocol;
|
|
|
-if(($receiver = $1) == nil || $receiver == undefined){
|
|
|
-currentProtocol=_st(self)._unclassifiedProtocol();
|
|
|
-currentProtocol;
|
|
|
-} else {
|
|
|
-$1;
|
|
|
-};
|
|
|
-$2=_st(self)._selectedMethod();
|
|
|
-if(($receiver = $2) == nil || $receiver == undefined){
|
|
|
-$2;
|
|
|
-} else {
|
|
|
-currentProtocol=_st(_st(self)._selectedMethod())._protocol();
|
|
|
-currentProtocol;
|
|
|
-};
|
|
|
-$4=_st(currentProtocol).__eq(_st(self)._allProtocol());
|
|
|
-if(smalltalk.assert($4)){
|
|
|
-$3=_st(self)._unclassifiedProtocol();
|
|
|
-} else {
|
|
|
-$3=currentProtocol;
|
|
|
-};
|
|
|
-return $3;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"compilationProtocol",{currentProtocol:currentProtocol},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["selectedProtocol", "ifNil:", "unclassifiedProtocol", "ifNotNil:", "protocol", "selectedMethod", "ifTrue:ifFalse:", "=", "allProtocol"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "compileClassComment:",
|
|
|
-fn: function (aString){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(_st(self)._environment())._compileClassComment_for_(aString,_st(self)._selectedClass());
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"compileClassComment:",{aString:aString},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["compileClassComment:for:", "selectedClass", "environment"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "compileClassDefinition:",
|
|
|
-fn: function (aString){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(_st(self)._environment())._compileClassDefinition_(aString);
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"compileClassDefinition:",{aString:aString},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["compileClassDefinition:", "environment"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "compileMethod:",
|
|
|
-fn: function (aString){
|
|
|
-var self=this;
|
|
|
-var method;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(self)._withCompileErrorHandling_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-method=_st(_st(self)._environment())._compileMethod_for_protocol_(aString,_st(self)._selectedClass(),_st(self)._compilationProtocol());
|
|
|
-method;
|
|
|
-return _st(self)._selectedMethod_(method);
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"compileMethod:",{aString:aString,method:method},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["withCompileErrorHandling:", "compileMethod:for:protocol:", "selectedClass", "compilationProtocol", "environment", "selectedMethod:"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "copyClassTo:",
|
|
|
-fn: function (aClassName){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(self)._withChangesDo_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return _st(_st(self)._environment())._copyClass_to_(_st(_st(self)._selectedClass())._theNonMetaClass(),aClassName);
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"copyClassTo:",{aClassName:aClassName},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["withChangesDo:", "copyClass:to:", "theNonMetaClass", "selectedClass", "environment"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "focusOnClasses",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-function $HLClassesFocusRequested(){return smalltalk.HLClassesFocusRequested||(typeof HLClassesFocusRequested=="undefined"?nil:HLClassesFocusRequested)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(_st(self)._announcer())._announce_(_st($HLClassesFocusRequested())._new());
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"focusOnClasses",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["announce:", "new", "announcer"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "focusOnMethods",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-function $HLMethodsFocusRequested(){return smalltalk.HLMethodsFocusRequested||(typeof HLMethodsFocusRequested=="undefined"?nil:HLMethodsFocusRequested)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(_st(self)._announcer())._announce_(_st($HLMethodsFocusRequested())._new());
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"focusOnMethods",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["announce:", "new", "announcer"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "focusOnPackages",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-function $HLPackagesFocusRequested(){return smalltalk.HLPackagesFocusRequested||(typeof HLPackagesFocusRequested=="undefined"?nil:HLPackagesFocusRequested)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(_st(self)._announcer())._announce_(_st($HLPackagesFocusRequested())._new());
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"focusOnPackages",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["announce:", "new", "announcer"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "focusOnProtocols",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-function $HLProtocolsFocusRequested(){return smalltalk.HLProtocolsFocusRequested||(typeof HLProtocolsFocusRequested=="undefined"?nil:HLProtocolsFocusRequested)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(_st(self)._announcer())._announce_(_st($HLProtocolsFocusRequested())._new());
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"focusOnProtocols",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["announce:", "new", "announcer"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "focusOnSourceCode",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-function $HLSourceCodeFocusRequested(){return smalltalk.HLSourceCodeFocusRequested||(typeof HLSourceCodeFocusRequested=="undefined"?nil:HLSourceCodeFocusRequested)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(_st(self)._announcer())._announce_(_st($HLSourceCodeFocusRequested())._new());
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"focusOnSourceCode",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["announce:", "new", "announcer"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "handleCompileError:",
|
|
|
-fn: function (anError){
|
|
|
-var self=this;
|
|
|
-function $HLCompileErrorRaised(){return smalltalk.HLCompileErrorRaised||(typeof HLCompileErrorRaised=="undefined"?nil:HLCompileErrorRaised)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1,$2;
|
|
|
-$1=_st($HLCompileErrorRaised())._new();
|
|
|
-_st($1)._error_(anError);
|
|
|
-$2=_st($1)._yourself();
|
|
|
-_st(_st(self)._announcer())._announce_($2);
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"handleCompileError:",{anError:anError},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["announce:", "error:", "new", "yourself", "announcer"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "handleParseError:",
|
|
|
-fn: function (anError){
|
|
|
-var self=this;
|
|
|
-var split,line,column,messageToInsert;
|
|
|
-function $HLParseErrorRaised(){return smalltalk.HLParseErrorRaised||(typeof HLParseErrorRaised=="undefined"?nil:HLParseErrorRaised)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1,$2;
|
|
|
-split=_st(_st(anError)._messageText())._tokenize_(" : ");
|
|
|
-messageToInsert=_st(split)._second();
|
|
|
-split=_st(_st(split)._first())._copyFrom_to_((21),_st(_st(split)._first())._size());
|
|
|
-split=_st(split)._tokenize_(" column ");
|
|
|
-line=_st(split)._first();
|
|
|
-column=_st(split)._second();
|
|
|
-$1=_st($HLParseErrorRaised())._new();
|
|
|
-_st($1)._line_(_st(line)._asNumber());
|
|
|
-_st($1)._column_(_st(column)._asNumber());
|
|
|
-_st($1)._message_(messageToInsert);
|
|
|
-_st($1)._error_(anError);
|
|
|
-$2=_st($1)._yourself();
|
|
|
-_st(_st(self)._announcer())._announce_($2);
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"handleParseError:",{anError:anError,split:split,line:line,column:column,messageToInsert:messageToInsert},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["tokenize:", "messageText", "second", "copyFrom:to:", "size", "first", "announce:", "line:", "asNumber", "new", "column:", "message:", "error:", "yourself", "announcer"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "handleUnkownVariableError:",
|
|
|
-fn: function (anError){
|
|
|
-var self=this;
|
|
|
-function $HLUnknownVariableErrorRaised(){return smalltalk.HLUnknownVariableErrorRaised||(typeof HLUnknownVariableErrorRaised=="undefined"?nil:HLUnknownVariableErrorRaised)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1,$2;
|
|
|
-$1=_st($HLUnknownVariableErrorRaised())._new();
|
|
|
-_st($1)._error_(anError);
|
|
|
-$2=_st($1)._yourself();
|
|
|
-_st(_st(self)._announcer())._announce_($2);
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"handleUnkownVariableError:",{anError:anError},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["announce:", "error:", "new", "yourself", "announcer"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "moveClassToPackage:",
|
|
|
-fn: function (aPackageName){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(self)._withChangesDo_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return _st(_st(self)._environment())._moveClass_toPackage_(_st(_st(self)._selectedClass())._theNonMetaClass(),aPackageName);
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"moveClassToPackage:",{aPackageName:aPackageName},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["withChangesDo:", "moveClass:toPackage:", "theNonMetaClass", "selectedClass", "environment"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "moveMethodToClass:",
|
|
|
-fn: function (aClassName){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(self)._withChangesDo_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return _st(_st(self)._environment())._moveMethod_toClass_(_st(self)._selectedMethod(),aClassName);
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"moveMethodToClass:",{aClassName:aClassName},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["withChangesDo:", "moveMethod:toClass:", "selectedMethod", "environment"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "moveMethodToProtocol:",
|
|
|
-fn: function (aProtocol){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(self)._withChangesDo_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return _st(_st(self)._environment())._moveMethod_toProtocol_(_st(self)._selectedMethod(),aProtocol);
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"moveMethodToProtocol:",{aProtocol:aProtocol},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["withChangesDo:", "moveMethod:toProtocol:", "selectedMethod", "environment"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "openClassNamed:",
|
|
|
-fn: function (aString){
|
|
|
-var self=this;
|
|
|
-var class_;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(self)._withChangesDo_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-class_=_st(_st(self)._environment())._classNamed_(aString);
|
|
|
-class_;
|
|
|
-_st(self)._selectedPackage_(_st(class_)._package());
|
|
|
-return _st(self)._selectedClass_(class_);
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"openClassNamed:",{aString:aString,class_:class_},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["withChangesDo:", "classNamed:", "environment", "selectedPackage:", "package", "selectedClass:"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "packages",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1;
|
|
|
-$1=_st(_st(self)._environment())._packages();
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"packages",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["packages", "environment"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "removeClass",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(self)._withChangesDo_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return _st(_st(self)._manager())._confirm_ifTrue_(_st("Do you REALLY want to remove class ").__comma(_st(_st(self)._selectedClass())._name()),(function(){
|
|
|
-return smalltalk.withContext(function($ctx3) {
|
|
|
-return _st(_st(self)._environment())._removeClass_(_st(self)._selectedClass());
|
|
|
-}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"removeClass",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["withChangesDo:", "confirm:ifTrue:", ",", "name", "selectedClass", "removeClass:", "environment", "manager"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "removeMethod",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(self)._withChangesDo_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return _st(_st(self)._manager())._confirm_ifTrue_(_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()),(function(){
|
|
|
-return smalltalk.withContext(function($ctx3) {
|
|
|
-return _st(_st(self)._environment())._removeMethod_(_st(self)._selectedMethod());
|
|
|
-}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"removeMethod",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["withChangesDo:", "confirm:ifTrue:", ",", "selector", "selectedMethod", "name", "methodClass", "removeMethod:", "environment", "manager"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "removeProtocol",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(self)._withChangesDo_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return _st(_st(self)._manager())._confirm_ifTrue_(_st("Do you REALLY want to remove protocol ").__comma(_st(self)._selectedProtocol()),(function(){
|
|
|
-return smalltalk.withContext(function($ctx3) {
|
|
|
-return _st(_st(self)._environment())._removeProtocol_from_(_st(self)._selectedProtocol(),_st(self)._selectedClass());
|
|
|
-}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"removeProtocol",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["withChangesDo:", "confirm:ifTrue:", ",", "selectedProtocol", "removeProtocol:from:", "selectedClass", "environment", "manager"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "renameClassTo:",
|
|
|
-fn: function (aClassName){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(self)._withChangesDo_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return _st(_st(self)._environment())._renameClass_to_(_st(_st(self)._selectedClass())._theNonMetaClass(),aClassName);
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"renameClassTo:",{aClassName:aClassName},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["withChangesDo:", "renameClass:to:", "theNonMetaClass", "selectedClass", "environment"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "renameProtocolTo:",
|
|
|
-fn: function (aString){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(self)._withChangesDo_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return _st(_st(self)._environment())._renameProtocol_to_in_(_st(self)._selectedProtocol(),aString,_st(self)._selectedClass());
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"renameProtocolTo:",{aString:aString},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["withChangesDo:", "renameProtocol:to:in:", "selectedProtocol", "selectedClass", "environment"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "save:",
|
|
|
-fn: function (aString){
|
|
|
-var self=this;
|
|
|
-function $HLSourceCodeSaved(){return smalltalk.HLSourceCodeSaved||(typeof HLSourceCodeSaved=="undefined"?nil:HLSourceCodeSaved)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1;
|
|
|
-_st(_st(self)._announcer())._announce_(_st($HLSourceCodeSaved())._new());
|
|
|
-$1=_st(self)._shouldCompileClassDefinition_(aString);
|
|
|
-if(smalltalk.assert($1)){
|
|
|
-_st(self)._compileClassDefinition_(aString);
|
|
|
-} else {
|
|
|
-_st(self)._compileMethod_(aString);
|
|
|
-};
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"save:",{aString:aString},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["announce:", "new", "announcer", "ifTrue:ifFalse:", "compileClassDefinition:", "compileMethod:", "shouldCompileClassDefinition:"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "saveSourceCode",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-function $HLSaveSourceCode(){return smalltalk.HLSaveSourceCode||(typeof HLSaveSourceCode=="undefined"?nil:HLSaveSourceCode)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(_st(self)._announcer())._announce_(_st($HLSaveSourceCode())._new());
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"saveSourceCode",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["announce:", "new", "announcer"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "selectedClass",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1;
|
|
|
-$1=self["@selectedClass"];
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"selectedClass",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: []}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "selectedClass:",
|
|
|
-fn: function (aClass){
|
|
|
-var self=this;
|
|
|
-function $HLClassSelected(){return smalltalk.HLClassSelected||(typeof HLClassSelected=="undefined"?nil:HLClassSelected)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1,$2,$3,$4,$5;
|
|
|
-$1=_st(_st(_st(self)._selectedClass()).__eq(aClass))._and_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return _st(aClass)._isNil();
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-if(smalltalk.assert($1)){
|
|
|
-$2=self;
|
|
|
-return $2;
|
|
|
-};
|
|
|
-_st(self)._withChangesDo_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-$3=_st(self["@selectedClass"]).__eq(aClass);
|
|
|
-if(smalltalk.assert($3)){
|
|
|
-_st(self)._selectedProtocol_(nil);
|
|
|
-};
|
|
|
-$4=aClass;
|
|
|
-if(($receiver = $4) == nil || $receiver == undefined){
|
|
|
-self["@selectedClass"]=nil;
|
|
|
-self["@selectedClass"];
|
|
|
-} else {
|
|
|
-$5=_st(self)._showInstance();
|
|
|
-if(smalltalk.assert($5)){
|
|
|
-self["@selectedClass"]=_st(aClass)._theNonMetaClass();
|
|
|
-self["@selectedClass"];
|
|
|
-} else {
|
|
|
-self["@selectedClass"]=_st(aClass)._theMetaClass();
|
|
|
-self["@selectedClass"];
|
|
|
-};
|
|
|
-};
|
|
|
-_st(self)._selectedProtocol_(nil);
|
|
|
-return _st(_st(self)._announcer())._announce_(_st($HLClassSelected())._on_(_st(self)._selectedClass()));
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"selectedClass:",{aClass:aClass},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["ifTrue:", "and:", "isNil", "=", "selectedClass", "withChangesDo:", "selectedProtocol:", "ifNil:ifNotNil:", "ifTrue:ifFalse:", "theNonMetaClass", "theMetaClass", "showInstance", "announce:", "on:", "announcer"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "selectedMethod",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $2,$1;
|
|
|
-$2=_st(self)._selectedClass();
|
|
|
-if(($receiver = $2) == nil || $receiver == undefined){
|
|
|
-$1=$2;
|
|
|
-} else {
|
|
|
-$1=_st(_st(_st(self)._selectedClass())._methodDictionary())._at_ifAbsent_(self["@selectedSelector"],(function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return nil;
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-};
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"selectedMethod",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["ifNotNil:", "at:ifAbsent:", "methodDictionary", "selectedClass"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "selectedMethod:",
|
|
|
-fn: function (aCompiledMethod){
|
|
|
-var self=this;
|
|
|
-function $HLMethodSelected(){return smalltalk.HLMethodSelected||(typeof HLMethodSelected=="undefined"?nil:HLMethodSelected)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1,$2,$3;
|
|
|
-$1=_st(self["@selectedSelector"]).__eq(aCompiledMethod);
|
|
|
-if(smalltalk.assert($1)){
|
|
|
-$2=self;
|
|
|
-return $2;
|
|
|
-};
|
|
|
-_st(self)._withChangesDo_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-$3=aCompiledMethod;
|
|
|
-if(($receiver = $3) == nil || $receiver == undefined){
|
|
|
-self["@selectedSelector"]=nil;
|
|
|
-self["@selectedSelector"];
|
|
|
-} else {
|
|
|
-self["@selectedSelector"]=_st(aCompiledMethod)._selector();
|
|
|
-self["@selectedSelector"];
|
|
|
-};
|
|
|
-return _st(_st(self)._announcer())._announce_(_st($HLMethodSelected())._on_(aCompiledMethod));
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"selectedMethod:",{aCompiledMethod:aCompiledMethod},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["ifTrue:", "=", "withChangesDo:", "ifNil:ifNotNil:", "selector", "announce:", "on:", "announcer"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "selectedPackage",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1;
|
|
|
-$1=self["@selectedPackage"];
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"selectedPackage",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: []}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "selectedPackage:",
|
|
|
-fn: function (aPackage){
|
|
|
-var self=this;
|
|
|
-function $HLPackageSelected(){return smalltalk.HLPackageSelected||(typeof HLPackageSelected=="undefined"?nil:HLPackageSelected)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1,$2;
|
|
|
-$1=_st(self["@selectedPackage"]).__eq(aPackage);
|
|
|
-if(smalltalk.assert($1)){
|
|
|
-$2=self;
|
|
|
-return $2;
|
|
|
-};
|
|
|
-_st(self)._withChangesDo_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-self["@selectedPackage"]=aPackage;
|
|
|
-self["@selectedPackage"];
|
|
|
-_st(self)._selectedClass_(nil);
|
|
|
-return _st(_st(self)._announcer())._announce_(_st($HLPackageSelected())._on_(aPackage));
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"selectedPackage:",{aPackage:aPackage},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["ifTrue:", "=", "withChangesDo:", "selectedClass:", "announce:", "on:", "announcer"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "selectedProtocol",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1;
|
|
|
-$1=self["@selectedProtocol"];
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"selectedProtocol",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: []}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "selectedProtocol:",
|
|
|
-fn: function (aString){
|
|
|
-var self=this;
|
|
|
-function $HLProtocolSelected(){return smalltalk.HLProtocolSelected||(typeof HLProtocolSelected=="undefined"?nil:HLProtocolSelected)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1,$2;
|
|
|
-$1=_st(self["@selectedProtocol"]).__eq(aString);
|
|
|
-if(smalltalk.assert($1)){
|
|
|
-$2=self;
|
|
|
-return $2;
|
|
|
-};
|
|
|
-_st(self)._withChangesDo_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-self["@selectedProtocol"]=aString;
|
|
|
-self["@selectedProtocol"];
|
|
|
-_st(self)._selectedMethod_(nil);
|
|
|
-return _st(_st(self)._announcer())._announce_(_st($HLProtocolSelected())._on_(aString));
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"selectedProtocol:",{aString:aString},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["ifTrue:", "=", "withChangesDo:", "selectedMethod:", "announce:", "on:", "announcer"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "shouldCompileClassDefinition:",
|
|
|
-fn: function (aString){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1;
|
|
|
-$1=_st(_st(_st(self)._selectedClass())._isNil())._or_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return _st(_st(_st(aString)._first())._asUppercase()).__eq(_st(aString)._first());
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"shouldCompileClassDefinition:",{aString:aString},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["or:", "=", "first", "asUppercase", "isNil", "selectedClass"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "showComment",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $2,$1;
|
|
|
-$2=self["@showComment"];
|
|
|
-if(($receiver = $2) == nil || $receiver == undefined){
|
|
|
-$1=false;
|
|
|
-} else {
|
|
|
-$1=$2;
|
|
|
-};
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"showComment",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["ifNil:"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "showComment:",
|
|
|
-fn: function (aBoolean){
|
|
|
-var self=this;
|
|
|
-function $HLShowCommentToggled(){return smalltalk.HLShowCommentToggled||(typeof HLShowCommentToggled=="undefined"?nil:HLShowCommentToggled)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(self)._withChangesDo_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-self["@showComment"]=aBoolean;
|
|
|
-self["@showComment"];
|
|
|
-return _st(_st(self)._announcer())._announce_(_st($HLShowCommentToggled())._new());
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"showComment:",{aBoolean:aBoolean},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["withChangesDo:", "announce:", "new", "announcer"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "showInstance",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $2,$1;
|
|
|
-$2=self["@showInstance"];
|
|
|
-if(($receiver = $2) == nil || $receiver == undefined){
|
|
|
-$1=true;
|
|
|
-} else {
|
|
|
-$1=$2;
|
|
|
-};
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"showInstance",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["ifNil:"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "showInstance:",
|
|
|
-fn: function (aBoolean){
|
|
|
-var self=this;
|
|
|
-function $HLShowInstanceToggled(){return smalltalk.HLShowInstanceToggled||(typeof HLShowInstanceToggled=="undefined"?nil:HLShowInstanceToggled)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1,$2,$4,$3;
|
|
|
-_st(self)._withChangesDo_((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-self["@showInstance"]=aBoolean;
|
|
|
-self["@showInstance"];
|
|
|
-self["@showComment"]=false;
|
|
|
-self["@showComment"];
|
|
|
-$1=_st(self)._selectedClass();
|
|
|
-if(($receiver = $1) == nil || $receiver == undefined){
|
|
|
-$1;
|
|
|
-} else {
|
|
|
-$2=self;
|
|
|
-$4=aBoolean;
|
|
|
-if(smalltalk.assert($4)){
|
|
|
-$3=_st(_st(self)._selectedClass())._theNonMetaClass();
|
|
|
-} else {
|
|
|
-$3=_st(_st(self)._selectedClass())._theMetaClass();
|
|
|
-};
|
|
|
-_st($2)._selectedClass_($3);
|
|
|
-};
|
|
|
-return _st(_st(self)._announcer())._announce_(_st($HLShowInstanceToggled())._new());
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"showInstance:",{aBoolean:aBoolean},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["withChangesDo:", "ifNotNil:", "selectedClass:", "ifTrue:ifFalse:", "theNonMetaClass", "selectedClass", "theMetaClass", "announce:", "new", "announcer"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "unclassifiedProtocol",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-return "as yet unclassified";
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"unclassifiedProtocol",{},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: []}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "withCompileErrorHandling:",
|
|
|
-fn: function (aBlock){
|
|
|
-var self=this;
|
|
|
-function $CompilerError(){return smalltalk.CompilerError||(typeof CompilerError=="undefined"?nil:CompilerError)}
|
|
|
-function $UnknownVariableError(){return smalltalk.UnknownVariableError||(typeof UnknownVariableError=="undefined"?nil:UnknownVariableError)}
|
|
|
-function $ParseError(){return smalltalk.ParseError||(typeof ParseError=="undefined"?nil:ParseError)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return _st((function(){
|
|
|
-return smalltalk.withContext(function($ctx3) {
|
|
|
-return _st(aBlock)._on_do_($ParseError(),(function(ex){
|
|
|
-return smalltalk.withContext(function($ctx4) {
|
|
|
-return _st(self)._handleParseError_(ex);
|
|
|
-}, function($ctx4) {$ctx4.fillBlock({ex:ex},$ctx1)})}));
|
|
|
-}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}))._on_do_($UnknownVariableError(),(function(ex){
|
|
|
-return smalltalk.withContext(function($ctx3) {
|
|
|
-return _st(self)._handleUnkownVariableError_(ex);
|
|
|
-}, function($ctx3) {$ctx3.fillBlock({ex:ex},$ctx1)})}));
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._on_do_($CompilerError(),(function(ex){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return _st(self)._handleCompileError_(ex);
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({ex:ex},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"withCompileErrorHandling:",{aBlock:aBlock},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["on:do:", "handleCompileError:", "handleUnkownVariableError:", "handleParseError:"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "withHelperLabelled:do:",
|
|
|
-fn: function (aString,aBlock){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1,$2;
|
|
|
-_st(_st(window)._jQuery_("#helper"))._remove();
|
|
|
-_st((function(html){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-$1=_st(html)._div();
|
|
|
-_st($1)._id_("helper");
|
|
|
-$2=_st($1)._with_(aString);
|
|
|
-return $2;
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}))._appendToJQuery_(_st("body")._asJQuery());
|
|
|
-_st((function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-_st(aBlock)._value();
|
|
|
-return _st(_st(window)._jQuery_("#helper"))._remove();
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._valueWithTimeout_((10));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"withHelperLabelled:do:",{aString:aString,aBlock:aBlock},smalltalk.HLBrowserModel)})},
|
|
|
-messageSends: ["remove", "jQuery:", "appendToJQuery:", "asJQuery", "id:", "div", "with:", "valueWithTimeout:", "value"]}),
|
|
|
-smalltalk.HLBrowserModel);
|
|
|
-
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "on:",
|
|
|
-fn: function (anEnvironment){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $2,$3,$1;
|
|
|
-$2=_st(self)._new();
|
|
|
-_st($2)._environment_(anEnvironment);
|
|
|
-$3=_st($2)._yourself();
|
|
|
-$1=$3;
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"on:",{anEnvironment:anEnvironment},smalltalk.HLBrowserModel.klass)})},
|
|
|
-messageSends: ["environment:", "new", "yourself"]}),
|
|
|
-smalltalk.HLBrowserModel.klass);
|
|
|
-
|
|
|
-
|
|
|
-smalltalk.addClass('HLClassCache', smalltalk.Object, ['class', 'selectorsCache', 'overrideCache', 'overriddenCache'], 'Helios-Browser');
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "invalidateChildrenSelector:",
|
|
|
-fn: function (aSelector){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1,$2;
|
|
|
-_st(_st(_st(self)._theClass())._subclasses())._do_((function(each){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-$1=_st(_st(self)._selectorsCache())._cacheFor_(each);
|
|
|
-_st($1)._removeSelector_(aSelector);
|
|
|
-$2=_st($1)._invalidateChildrenSelector_(aSelector);
|
|
|
-return $2;
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"invalidateChildrenSelector:",{aSelector:aSelector},smalltalk.HLClassCache)})},
|
|
|
-messageSends: ["do:", "removeSelector:", "cacheFor:", "selectorsCache", "invalidateChildrenSelector:", "subclasses", "theClass"]}),
|
|
|
-smalltalk.HLClassCache);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "invalidateParentSelector:",
|
|
|
-fn: function (aSelector){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1,$2,$3;
|
|
|
-$1=_st(_st(self)._theClass())._superclass();
|
|
|
-if(($receiver = $1) == nil || $receiver == undefined){
|
|
|
-$1;
|
|
|
-} else {
|
|
|
-$2=_st(_st(self)._selectorsCache())._cacheFor_(_st(_st(self)._theClass())._superclass());
|
|
|
-_st($2)._removeSelector_(aSelector);
|
|
|
-$3=_st($2)._invalidateParentSelector_(aSelector);
|
|
|
-$3;
|
|
|
-};
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"invalidateParentSelector:",{aSelector:aSelector},smalltalk.HLClassCache)})},
|
|
|
-messageSends: ["ifNotNil:", "removeSelector:", "cacheFor:", "superclass", "theClass", "selectorsCache", "invalidateParentSelector:"]}),
|
|
|
-smalltalk.HLClassCache);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "invalidateSelector:",
|
|
|
-fn: function (aSelector){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1,$2;
|
|
|
-$1=self;
|
|
|
-_st($1)._invalidateParentSelector_(aSelector);
|
|
|
-_st($1)._invalidateChildrenSelector_(aSelector);
|
|
|
-$2=_st($1)._removeSelector_(aSelector);
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"invalidateSelector:",{aSelector:aSelector},smalltalk.HLClassCache)})},
|
|
|
-messageSends: ["invalidateParentSelector:", "invalidateChildrenSelector:", "removeSelector:"]}),
|
|
|
-smalltalk.HLClassCache);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "isOverridden:",
|
|
|
-fn: function (aMethod){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1;
|
|
|
-$1=_st(_st(self)._overriddenCache())._at_ifAbsentPut_(_st(aMethod)._selector(),(function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return _st(aMethod)._isOverridden();
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"isOverridden:",{aMethod:aMethod},smalltalk.HLClassCache)})},
|
|
|
-messageSends: ["at:ifAbsentPut:", "selector", "isOverridden", "overriddenCache"]}),
|
|
|
-smalltalk.HLClassCache);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "isOverride:",
|
|
|
-fn: function (aMethod){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1;
|
|
|
-$1=_st(_st(self)._overrideCache())._at_ifAbsentPut_(_st(aMethod)._selector(),(function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-return _st(aMethod)._isOverride();
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"isOverride:",{aMethod:aMethod},smalltalk.HLClassCache)})},
|
|
|
-messageSends: ["at:ifAbsentPut:", "selector", "isOverride", "overrideCache"]}),
|
|
|
-smalltalk.HLClassCache);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "overriddenCache",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-function $HashedCollection(){return smalltalk.HashedCollection||(typeof HashedCollection=="undefined"?nil:HashedCollection)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $2,$1;
|
|
|
-$2=self["@overriddenCache"];
|
|
|
-if(($receiver = $2) == nil || $receiver == undefined){
|
|
|
-self["@overriddenCache"]=_st($HashedCollection())._new();
|
|
|
-$1=self["@overriddenCache"];
|
|
|
-} else {
|
|
|
-$1=$2;
|
|
|
-};
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"overriddenCache",{},smalltalk.HLClassCache)})},
|
|
|
-messageSends: ["ifNil:", "new"]}),
|
|
|
-smalltalk.HLClassCache);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "overrideCache",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-function $HashedCollection(){return smalltalk.HashedCollection||(typeof HashedCollection=="undefined"?nil:HashedCollection)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $2,$1;
|
|
|
-$2=self["@overrideCache"];
|
|
|
-if(($receiver = $2) == nil || $receiver == undefined){
|
|
|
-self["@overrideCache"]=_st($HashedCollection())._new();
|
|
|
-$1=self["@overrideCache"];
|
|
|
-} else {
|
|
|
-$1=$2;
|
|
|
-};
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"overrideCache",{},smalltalk.HLClassCache)})},
|
|
|
-messageSends: ["ifNil:", "new"]}),
|
|
|
-smalltalk.HLClassCache);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "removeSelector:",
|
|
|
-fn: function (aSelector){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-_st(_st(self)._overriddenCache())._removeKey_ifAbsent_(aSelector,(function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-_st(_st(self)._overrideCache())._removeKey_ifAbsent_(aSelector,(function(){
|
|
|
-return smalltalk.withContext(function($ctx2) {
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"removeSelector:",{aSelector:aSelector},smalltalk.HLClassCache)})},
|
|
|
-messageSends: ["removeKey:ifAbsent:", "overriddenCache", "overrideCache"]}),
|
|
|
-smalltalk.HLClassCache);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "selectorsCache",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1;
|
|
|
-$1=self["@selectorsCache"];
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"selectorsCache",{},smalltalk.HLClassCache)})},
|
|
|
-messageSends: []}),
|
|
|
-smalltalk.HLClassCache);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "selectorsCache:",
|
|
|
-fn: function (aCache){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-self["@selectorsCache"]=aCache;
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"selectorsCache:",{aCache:aCache},smalltalk.HLClassCache)})},
|
|
|
-messageSends: []}),
|
|
|
-smalltalk.HLClassCache);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "theClass",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1;
|
|
|
-$1=self["@class"];
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"theClass",{},smalltalk.HLClassCache)})},
|
|
|
-messageSends: []}),
|
|
|
-smalltalk.HLClassCache);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "theClass:",
|
|
|
-fn: function (aClass){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-self["@class"]=aClass;
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"theClass:",{aClass:aClass},smalltalk.HLClassCache)})},
|
|
|
-messageSends: []}),
|
|
|
-smalltalk.HLClassCache);
|
|
|
-
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "on:selectorsCache:",
|
|
|
-fn: function (aClass,aSelectorsCache){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $2,$3,$1;
|
|
|
-$2=_st(self)._new();
|
|
|
-_st($2)._theClass_(aClass);
|
|
|
-_st($2)._selectorsCache_(aSelectorsCache);
|
|
|
-$3=_st($2)._yourself();
|
|
|
-$1=$3;
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"on:selectorsCache:",{aClass:aClass,aSelectorsCache:aSelectorsCache},smalltalk.HLClassCache.klass)})},
|
|
|
-messageSends: ["theClass:", "new", "selectorsCache:", "yourself"]}),
|
|
|
-smalltalk.HLClassCache.klass);
|
|
|
-
|
|
|
-
|
|
|
-smalltalk.addClass('HLDocumentationWidget', smalltalk.HLFocusableWidget, ['model'], 'Helios-Browser');
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "defaultDocumentation",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-return "#No documentation available. \x0a##That's bad. Seriously.";
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"defaultDocumentation",{},smalltalk.HLDocumentationWidget)})},
|
|
|
-messageSends: []}),
|
|
|
-smalltalk.HLDocumentationWidget);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "documentation",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $2,$1;
|
|
|
-$2=_st(_st(_st(_st(self)._model())._selectedClass())._theNonMetaClass())._comment();
|
|
|
-if(($receiver = $2) == nil || $receiver == undefined){
|
|
|
-$1=_st(self)._defaultDocumentation();
|
|
|
-} else {
|
|
|
-$1=$2;
|
|
|
-};
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"documentation",{},smalltalk.HLDocumentationWidget)})},
|
|
|
-messageSends: ["ifNil:", "defaultDocumentation", "comment", "theNonMetaClass", "selectedClass", "model"]}),
|
|
|
-smalltalk.HLDocumentationWidget);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "model",
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1;
|
|
|
-$1=self["@model"];
|
|
|
-return $1;
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"model",{},smalltalk.HLDocumentationWidget)})},
|
|
|
-messageSends: []}),
|
|
|
-smalltalk.HLDocumentationWidget);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "model:",
|
|
|
-fn: function (aModel){
|
|
|
-var self=this;
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-self["@model"]=aModel;
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"model:",{aModel:aModel},smalltalk.HLDocumentationWidget)})},
|
|
|
-messageSends: []}),
|
|
|
-smalltalk.HLDocumentationWidget);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-smalltalk.method({
|
|
|
-selector: "renderContentOn:",
|
|
|
-fn: function (html){
|
|
|
-var self=this;
|
|
|
-function $Showdown(){return smalltalk.Showdown||(typeof Showdown=="undefined"?nil:Showdown)}
|
|
|
-return smalltalk.withContext(function($ctx1) {
|
|
|
-var $1,$2;
|
|
|
-$1=_st(html)._div();
|
|
|
-_st($1)._class_("markdown");
|
|
|
-$2=_st($1)._asJQuery();
|
|
|
-_st($2)._html_(_st(_st(_st($Showdown())._at_("converter"))._new())._makeHtml_(_st(self)._documentation()));
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLDocumentationWidget)})},
|
|
|
-messageSends: ["html:", "makeHtml:", "documentation", "new", "at:", "class:", "div", "asJQuery"]}),
|
|
|
-smalltalk.HLDocumentationWidget);
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
smalltalk.addClass('HLSelectorsCache', smalltalk.Object, ['classesCache'], 'Helios-Browser');
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|