Lively Kernel canvas
truenull
Wikicontroltruetrue
BigText20
Unbordered20null
0.160157.38445300231157-1.7449943866554833
http://www.lively-kernel.org/repository/lively-wiki/truetruetruetruetrue
falsetruetrue
false00.11truefalsetruetrue
codebasefalsenulltruefalsefalsetrue
null
localfalsenulltruefalsefalsetrue
null
ConnectBrowser.jsfalsetruefalsetrue0false
gerbil_junk.jsfalsetruefalsetrue0false
Localcodefalsetruefalsetrue0false
Pen.lkmlfalsetruefalsetrue0false
SmalltalkParser.ometafalsetruefalsetrue0false
WikiParser.ometafalsetruefalsetrue0false2050nullnulltruefalsefalsenullnulltruetrue
false00.11truefalse
nullfalse
nullfalse
nullfalse
nullfalsefalsetruetrue
SimpleBrowser2falsetruefalsetrue0false205-1nullnullnulltruefalsefalsenullnulltruetrue
false00.11truefalse
nullfalse
nullfalse
nullfalse
nullfalsefalsetruetrue
-----falsetruefalsetrue0false205
-1nullnullnulltruefalsetruetrue
false00.11truefalse
nullfalse
nullfalse
nullfalse
nullfalsefalsetruetrue
-----falsetruefalsetrue0false205
-1nullnullnulltruefalsetruetrue
false00.11truefalse
nullfalse
nullfalse
nullfalse
nullfalsefalsetruetrue
20nullfalse
module('ConnectBrowser').requires().toRun(function(){WidgetModel.subclass('SimpleBrowser2',{viewTitle:"LivelyClassBrowser",initialize:function($super){//varbrowser=newSimpleBrowser2();browser.openIn(this.world(),pt(100,100));//Testinvocation//AnotherimplementationofSimpleBrowser,usingconnect()insteadofMVC//Theseareexperimentsinstyle,afterwhichonlyonewillremain,andallbrowserswillfollowthepreferredstylethis.classList=null;this.className=null;this.methodList=null;this.methodName=null;this.methodString=null;$super();},buildView:function(extent){//Buildaviewpanelforthismodel,andsetuptheviewinglogicvarpanel=PanelMorph.makePanedPanel(extent,[["leftPane",newRealListPane,newRectangle(0,0,0.5,0.5)],["rightPane",newRealListPane,newRectangle(0.5,0,0.5,0.5)],["bottomPane",newTextPane,newRectangle(0,0.5,1,0.5)]]);panel.bottomPane.innerMorph().noEval=true;panel.model=this;//Bindpanel"smodeltome(cantheninspectfromwindowmenu)//panel.leftPane.connectModel({model:this,getMenu:"getClassPaneMenu"});//Howtodomenusnow??connect(this,"classList",panel.leftPane.innerMorph(),"updateList");connect(panel.leftPane.innerMorph(),"selection",this,"setClassName");connect(this,"methodList",panel.rightPane.innerMorph(),"updateList");connect(panel.rightPane.innerMorph(),"selection",this,"setMethodName");connect(this,"methodString",panel.bottomPane.innerMorph(),"setTextString");connect(panel.bottomPane.innerMorph(),"savedTextString",this,"setMethodString");this.classList=this.listClasses();//Initializethelistofclassesreturnpanel;},listClasses:function(){returnGlobal.classes(true).collect(function(ea){returnClass.className(ea)}).select(function(ea){return!ea.startsWith("anonymous")}).concat(["Global"]).sort();},setClassName:function(name){if(name==null)return[];this.className=name;varsorted=(this.className=='Global')?this.functionNames(Global).sort():Class.forName(this.className).localFunctionNames().sort();vardefStr="*definition";vardefRef=module.SourceControl&&module.SourceControl.getSourceInClassForMethod(this.className,defStr);this.methodList=defRef?[defStr].concat(sorted):sorted;},setMethodName:function(name){this.methodName=name;if(!this.className||!name)returnthis.methodString="--nocode--";if(module.SourceControl)varsource=module.SourceControl.getSourceInClassForMethod(this.className,this.methodName);if(source)returnthis.methodString=source;varfunc=(this.className=="Global")?Global[this.methodName]:Class.forName(this.className).prototype[this.methodName];if(!func)returnthis.methodString="--nocode--";if(module.SourceControl)returnthis.methodString="//**Decompiledcode**//\n"+func.getOriginal().toString();this.methodString=func.getOriginal().toString();},setMethodString:function(methodString){varmethodDef=this.className+".prototype."+this.methodName+"=";//isitamethoddefinaclassstartingwiththenamelike"asString:function(){return'foo'},"?varparts=methodString.match(/\s*([^:]*):\s*(function(.|\s)*),?/)if(parts&&parts[1]==this.methodName){varbody=parts[2];varendsWithComma=/,\s*$/.test(body);if(endsWithComma)body=body.substring(0,body.lastIndexOf(','))methodDef+=body;}else{methodDef+=methodString;}try{eval(methodDef);WorldMorph.current().setStatusMessage('Successfullyevaluated'+this.methodName,Color.green,4);}catch(er){WorldMorph.current().alert("errorevaluatingmethod"+methodDef);}ChangeSet.current().logChange({type:'method',className:this.className,methodName:this.methodName,methodString:methodString});},functionNames:function(namespace){//Thislogicshouldprobablybein,eg,Namespace.functionNames()returnObject.keys(namespace).select(function(ea){varfunc=namespace[ea];returnfunc&&!Class.isClass(func)&&Object.isFunction(func)&&!func.declaredClass}).collect(function(ea){returnnamespace[ea].name||ea})},getClassPaneMenu:function(){varitems=[];dbgOn(true);if(this.className!=null){vartheClass=Class.forName(this.className);if(theClass.prototype!=null){items.push(['profileselectedclass',function(){showStatsViewer(theClass.prototype,this.className+"...");}]);}}returnitems;},});})//endofmodule110truetrue2000000falsetruetrue
false00.11truefalsetruetrue
20nullfalse
truetruefalsetruetrue
false00.11truefalsetruetrue
Addmodulefalsenulltruefalsetrue
null
Loadallfalsenulltruefalsefalsetrue
LineNofalsenulltruefalsefalsetrue
Refreshfalsenulltruefalsefalsetrue
Evalonfalsenulltruefalsefalsetrue
Sortfalsenulltruefalsefalsetrue
Viewas...falsenulltruefalsefalse
classesfalsenulltruefalsetruetruetrue
functionsfalsenulltruefalsetruetruetrue
objectsfalsenulltruefalsetruetruetrue
truetrue
nullnull
nullfalsetruenull
ConnectBrowser.jsfalsenulltruefalse
false
false
falsenullfalsefalsenullnullnullnullfalse
null13