Lively Kernel canvas
HTMLandJavaScript16nullnull
Petitions-waitingThisisalistofpetitionswaitingtobegranted14true2
Books-outThisisalistofbooksloanedoutbutnotyetreturned14true2
PetitionersThirdlist.Probablyallowslookingattheirhistory14true2
Make-new-petitioner.Allowsownerorotherstoregisteranewuser2
Recall-button.Ifyoupressthis,itsendsemailaskingtofinishandreturn.Severalmoreurgentvestions2
Evaluate-button.Ifyoupressthis,itopensapetitionviewthatletstheownerrejectitorgrantit2
Petition-button.Ifyoupressthis,itopensaviewofanewpetition,thatincludesabuttontosubmit,whichwillenteritinthePetitions-waitinglist2
Make-new-book-button.Ifyoupressthis,itopensaviewofabookthatincludesabuttontoenteritinthesystem2
Thisisathumbnailviewofthebookcollection(wemightwanttodovideos).Itcanbefilteredandsortedvariousways,butasimplelayoutof,say20titlesisfineforastart.Theyshouldbelittleimages,anditshouldbepossibletomakeaselection2
Template
petitionersasktoborrowabookbysubmittingapetition,orthelibrariancandothishimself1true
false3
truetruetrue
00.11
true
true
1false
SelectionTrait={handlesMouseDown:Functions.True,selectionColor:Color.red,onMouseDown:function(evt){if(this.isSelected)this.unselect()elsethis.select()},select:function(){this.savedBorderFill=this.getBorderColor();this.savedBorderWidth=this.getBorderWidth();this.applyStyle({borderColor:this.selectionColor,borderWidth:3})this.isSelected=true;},unselect:function(){this.applyStyle({borderColor:this.savedBorderFill||this.getFill(),borderWidth:this.savedBorderWidth||0,})this.isSelected=false;},}m=$morph('item1')Object.extend(m,SelectionTrait)m.applyStyle({borderWidth:3})m.handlesMouseDown=Functions.Truem.22truetruefalsetruetruefalse
false10.11
true
false
truefalse
nullfalsetruenullfalse
Workspacefalsenulltruefalse
Xfalsenulltrue
false
false
–falsenulltrue
false
falsenullfalsefalsenullnullnullnullfalse
bounds=newRectangle(0,20,600,300)sp=newScrollPane(newBoxMorph(bounds),bounds);sp.applyStyle({fill:Color.green});sp.disableVerticalScrollBar();sp.addHorizontalScrollBar()sp.openInWorld()//sp.remove()bg=sp.innerMorph()bg.applyStyle({fill:Color.red});bg.layoutManager=newHorizontalLayout();sp.relayout()bg.addMorph($morph('item1'))bg.addMorph($morph('item2'))bg.submorphssp.suppressHandles=falsex=bg.layoutManager.leftPaddingOf(bg)y=bg.layoutManager.topPaddingOf(bg)submorphs=bg.visibleSubmorphs();for(vari=0;i<submorphs.length;i++){i=2submorph=submorphs[i];x+=bg.layoutManager.leftMarginOf(submorph)submorph.align(submorph.bounds().topLeft(),pt(x,y));x+=submorph.bounds().width;x+=bg.layoutManager.rightMarginOf(submorph);}27truetruefalsetruetruefalse
false00.11
true
false
truefalse
nullfalsetruenullfalse
Workspacefalsenulltruefalse
Xfalsenulltrue
false
false
–falsenulltrue
false
falsenullfalsefalsenullnullnullnullfalse
nullfalsetruenullfalse
TestRunnerfalsenulltruefalse
Xfalsenulltrue
false
false
–falsenulltrue
false
falsenullfalse
Tests.MorphTest.BinarySearchListMorphTestfalsefalsetruefalsetrue0false
Tests.MorphTest.ClipMorphTestfalsefalsetruefalsetrue0false
Tests.MorphTest.CopyLabelTestfalsefalsetruefalsetrue0false
Tests.MorphTest.DragnDropListTestfalsefalsetruefalsetrue0false
Tests.MorphTest.DuplicateTextMorphTestfalsefalsetruefalsetrue0false
Tests.MorphTest.FilterableListMorphTestfalsefalsetruefalsetrue0false
Tests.MorphTest.HTMLFontCharWidthCompositionTestfalsefalsetruefalsetrue0false
Tests.MorphTest.HandMorphTestfalsefalsetruefalsetrue0false
Tests.MorphTest.HorizontalDividerTestfalsefalsetruefalsetrue0false
Tests.MorphTest.HorizontalLayoutTestfalsefalsetruefalsetrue0false
Tests.MorphTest.ImageMorphTestfalsefalsetruefalsetrue0false
Tests.MorphTest.LayoutTestfalsefalsetruefalsetrue0false
Tests.MorphTest.ListMorphTestfalsefalsetruefalsetrue0false
Tests.MorphTest.MorphTestfalsefalsetruefalsetrue0false
Tests.MorphTest.MouseEventTestfalsefalsetruefalsetrue0false
Tests.MorphTest.NodeMorphTestfalsefalsetruefalsetrue0false
Tests.MorphTest.ProgressBarMorphTestfalsefalsetruefalsetrue0false
Tests.MorphTest.RunArrayTestfalsefalsetruefalsetrue0false
Tests.MorphTest.ScrollPaneTestfalsefalsetruefalsetrue0false
Tests.MorphTest.TextListMorphTestfalsefalsetruefalsetrue0false
Tests.MorphTest.TextMorphTestfalsefalsetruefalsetrue0false
Tests.MorphTest.VerticalLayoutTestfalsefalsetruefalsetrue0false
Tests.MorphTest.VideoMorphTestfalsefalsetruefalsetrue0false603null
-1nullnulltruetruetrue
00.11
true
true
RunTestCasefalsenulltruefalsetrue
RunAllTestCasesfalsenulltruefalsetrue
Refreshfalsenulltruefalsetrue
null
null0
-----falsefalsetruefalsetrue0603.5
-1nullnulltruetruetrue
00.11
true
true
truefalsenullnullnullnullfalse
nullfalsetruenullfalse
MorphTest.js:Tests.MorphTest.HorizontalLayoutTest:--all--falsenulltruefalse
Xfalsenulltrue
false
false
–falsenulltrue
false
falsenullfalse
http://localhost/webwerkstatt/truetruetruetruetrue
truetrue
00.11
true
true
codebasefalsenulltruefalsetrue
localfalsenulltruefalsetrue
Localcodefalsefalsetruefalsetrue0false
test.js(notparsed)falsefalsetruefalsetrue0false
test1.js(notparsed)falsefalsetruefalsetrue0false
test2.js(notparsed)falsefalsetruefalsetrue0false208null-1nullnulltruetruetrue
00.11
true
null
null
null
nulltrue
true
-----falsefalsetruefalsetrue0false208null
-1nullnulltruetruetrue
00.11
true
null
null
null
nulltrue
true
-----falsefalsetruefalsetrue0false208null
-1nullnulltruetruetrue
00.11
true
null
null
null
nulltrue
true
-----falsefalsetruefalsetrue0false208null
-1nullnulltruetruetrue
00.11
true
null
null
null
nulltrue
true
20null
truetrue2000000
0.5
truetrue
00.11
true
true
20null
Addmodulefalsenulltruefalsetrue
Loadallfalsenulltruefalsetrue
LineNofalsenulltruefalsetrue
Refreshfalsenulltruefalsetrue
Evalonfalsenulltruefalsetrue
Sortfalsenulltruefalsetrue
Viewas...falsenulltruefalsetrue
truetrue
falsenullnullnullnullfalse
null106