[squeak-dev] The Trunk: EToys-mt.428.mcz

commits at source.squeak.org commits at source.squeak.org
Fri Feb 26 14:46:24 UTC 2021


Marcel Taeumel uploaded a new version of EToys to project The Trunk:
http://source.squeak.org/trunk/EToys-mt.428.mcz

==================== Summary ====================

Name: EToys-mt.428
Author: mt
Time: 26 February 2021, 3:46:14.660955 pm
UUID: 717b17d4-5453-8645-b809-fba5e44796ca
Ancestors: EToys-mt.427

Complements Morphic-mt.1726

=============== Diff against EToys-mt.427 ===============

Item was changed:
+ ----- Method: ComponentLayout>>allKnownNames (in category 'submorphs - accessing') -----
- ----- Method: ComponentLayout>>allKnownNames (in category 'submorphs-accessing') -----
  allKnownNames
  	^super allKnownNames 
  		, (self submorphs collect: [:m | m knownName] thenSelect: [:m | m notNil])!

Item was changed:
+ ----- Method: ComponentLikeModel>>delete (in category 'submorphs - add/remove') -----
- ----- Method: ComponentLikeModel>>delete (in category 'submorphs-add/remove') -----
  delete
  	"Delete the receiver.  Possibly put up confirming dialog.  Abort if user changes mind"
  
  	(model isKindOf: Component) ifTrue: [^self deleteComponent].
  	(model isMorphicModel) ifFalse: [^super delete].
  	slotName ifNotNil: 
  			[(PopUpMenu confirm: 'Shall I remove the slot ' , slotName 
  						, '
  	along with all associated methods?') 
  				ifTrue: 
  					[(model class selectors select: [:s | s beginsWith: slotName]) 
  						do: [:s | model class removeSelector: s].
  					(model class instVarNames includes: slotName) 
  						ifTrue: [model class removeInstVarName: slotName]]
  				ifFalse: 
  					[(PopUpMenu 
  						confirm: '...but should I at least dismiss this morph?
  	[choose no to leave everything unchanged]') 
  							ifFalse: [^self]]].
  	super delete!

Item was changed:
  ----- Method: EtoyDAVLoginMorph>>buildPanel (in category 'private') -----
  buildPanel
  
  	| title |
  	self deletePanel.
  	panel := AlignmentMorphBob1 new.
  	panel vResizing: #shrinkWrap;
  		 hResizing: #shrinkWrap;
  		 layoutInset: 4;
  		color: self defaultColor;
  		 beSticky;
  		borderWidth: self defaultBorderWidth;
  		borderColor:  self defaultBorderColor.
  	title := TextMorph new contents: 'Etoys is trying to open your web browser.\If it does not work, you can sign up at:\\' translated withCRs, self url; beAllFont: self myFont.
  	title beSticky.
  	title centered.
  	panel addARow: {title}.
  	panel addARow: { (StringMorph contents:'') lock }.
  
  	panel addARow: {
  		self newSpacer: Color transparent.
  		self okButton2 hResizing: #rigid.
  		self newSpacer: Color transparent.
  	}.
+ 	panel morphicLayerNumber: self class dialogLayer - 1.
- 	panel setProperty: #morphicLayerNumber toValue: 9.
  	^ panel.
  
  !

Item was changed:
  ----- Method: EtoyDAVLoginMorph>>initialize (in category 'initialization') -----
  initialize
  	"initialize the state of the receiver"
  	
  	super initialize.
  	""
  	self vResizing: #shrinkWrap;
  		 hResizing: #shrinkWrap;
  		 layoutInset: 4;
  		 beSticky;
  		 rebuild.
+ 	self morphicLayerNumber: self class dialogLayer.!
- 	self setProperty: #morphicLayerNumber toValue: 10.!

Item was changed:
+ ----- Method: KedamaMorph>>allSubmorphNamesDo: (in category 'submorphs - accessing') -----
- ----- Method: KedamaMorph>>allSubmorphNamesDo: (in category 'submorphs-accessing') -----
  allSubmorphNamesDo: aBlock
  
  	super allSubmorphNamesDo: aBlock.
  	aBlock value: self defaultPatch externalName.
  !

Item was changed:
  ----- Method: NewVariableDialogMorph>>initialize (in category 'initialize') -----
  initialize
+ 
  	super initialize.
+ 	
+ 	self morphicLayerNumber: self class dialogLayer.
+ 	self rebuild.!
- 	self rebuild!

Item was removed:
- ----- Method: NewVariableDialogMorph>>morphicLayerNumber (in category 'accessing') -----
- morphicLayerNumber
- 
- 	^10.6!

Item was changed:
+ ----- Method: PinMorph>>delete (in category 'submorphs - add/remove') -----
- ----- Method: PinMorph>>delete (in category 'submorphs-add/remove') -----
  delete
  	self unwire.
  	^ super delete!

Item was changed:
+ ----- Method: ScriptEditorMorph>>dismissViaHalo (in category 'submorphs - add/remove') -----
- ----- Method: ScriptEditorMorph>>dismissViaHalo (in category 'submorphs-add/remove') -----
  dismissViaHalo
  	"The user has clicked in the delete halo-handle.  This provides a hook in case some concomitant action should be taken, or if the particular morph is not one which should be put in the trash can, for example."
  
  	self resistsRemoval ifTrue: [^ self].
  	self destroyScript!

Item was changed:
+ ----- Method: SpectrumAnalyzerMorph>>delete (in category 'submorphs - add/remove') -----
- ----- Method: SpectrumAnalyzerMorph>>delete (in category 'submorphs-add/remove') -----
  delete
  	"Turn off recording when this morph is deleted."
  
  	super delete.
  	soundInput stopRecording.
  !

Item was changed:
+ ----- Method: StackMorph>>allNonSubmorphMorphs (in category 'submorphs - accessing') -----
- ----- Method: StackMorph>>allNonSubmorphMorphs (in category 'submorphs-accessing') -----
  allNonSubmorphMorphs
  	"Return a collection containing all morphs in this morph which are not currently in the submorph containment hierarchy.  Especially the non-showing pages in BookMorphs."
  
  	| coll |
  	coll := OrderedCollection new.
  	self privateCards do: [:cd | 
  		cd privateMorphs ifNotNil: [coll addAll: cd privateMorphs]].
  	^ coll!

Item was changed:
+ ----- Method: StackMorph>>insertionIndexForPaneOfType: (in category 'submorphs - accessing') -----
- ----- Method: StackMorph>>insertionIndexForPaneOfType: (in category 'submorphs-accessing') -----
  insertionIndexForPaneOfType: aType
  	| naturalIndex insertionIndex |
  	naturalIndex := self naturalPaneOrder indexOf: aType.
  	insertionIndex := 1.
  	(self naturalPaneOrder copyFrom: 1 to: (naturalIndex - 1)) do: "guys that would precede"
  		[:sym | (self hasSubmorphWithProperty: sym)
  			ifTrue:
  				[insertionIndex := insertionIndex + 1]].
  	^ insertionIndex!

Item was changed:
+ ----- Method: StackMorph>>naturalPaneOrder (in category 'submorphs - accessing') -----
- ----- Method: StackMorph>>naturalPaneOrder (in category 'submorphs-accessing') -----
  naturalPaneOrder
  	^ #(header pageControl retrieve search index content)!

Item was changed:
  ----- Method: StandardScriptingSystem>>openInfoFlapWithLabel:helpContents:edge: (in category '*Etoys-Squeakland-help in a flap') -----
  openInfoFlapWithLabel: aTitle helpContents: aString edge: anEdge
  	"Open an info flap with the given label, contents, and edge"
  
  	| aPlug outer leftStrip rightStrip titleRow aDismissButton aFlapTab |
  	Preferences enable: #scrollBarsOnRight.
  	Preferences enable: #inboardScrollbars.
  
  	aFlapTab := FlapTab new.
  	aFlapTab assureExtension visible: false.
  	aFlapTab referentMargin: 0 @ Project current world sugarAllowance.
  	
  	outer := HelpFlap newRow.
  	outer assureExtension visible: false.
  	outer clipSubmorphs: true.
  	outer beTransparent.
  	outer vResizing: #spaceFill; hResizing: #spaceFill.
  	outer layoutInset: 0; cellInset: 0; borderWidth: 0.
+ 	outer morphicLayerNumber: outer class navigatorLayer.
- 	outer setProperty: #morphicLayerNumber toValue: 26.
  	
  	leftStrip := Morph new beTransparent.
  	leftStrip layoutInset: 0; cellInset: 0; borderWidth: 0.
  	leftStrip width:  20.
  	leftStrip hResizing: #rigid; vResizing: #spaceFill.
  	outer addMorphBack: leftStrip.
  	
  	rightStrip := AlignmentMorph newColumn.
  	rightStrip beTransparent.
  	rightStrip layoutInset: 0; cellInset: 0; borderWidth: 0.
  	outer addMorphBack: rightStrip.
  	outer clipSubmorphs: true.
  	
  	titleRow := AlignmentMorph newRow.
  	titleRow borderColor: Color veryVeryLightGray; borderWidth: 1.
  	titleRow hResizing: #spaceFill; vResizing: #shrinkWrap.
  	titleRow beTransparent.
  	aDismissButton := aFlapTab tanOButton.
  	aDismissButton actionSelector: #dismissViaHalo.
  	titleRow addMorphFront: aDismissButton.
  	titleRow addTransparentSpacerOfSize: 8 @ 0.
  	titleRow
  		addMorphBack: (StringMorph contents: aTitle font:  Preferences standardEToysTitleFont).
  	rightStrip addMorph: titleRow.
  	
  	aPlug := PluggableTextMorph new.
  	aPlug width: 540.
  	aPlug setText: aString.
  	aPlug textMorph beAllFont: Preferences standardEToysFont.
  	aPlug retractable: false; scrollBarOnLeft: false.
  	aPlug hScrollBarPolicy: #never.
  	aPlug borderColor: ScriptingSystem borderColor.	
  	aPlug setNameTo: aTitle.
  	aPlug hResizing: #spaceFill.
  	aPlug vResizing: #spaceFill.
  	rightStrip addMorphBack: aPlug.
  	aFlapTab referent ifNotNil: [aFlapTab referent delete].
  	aFlapTab referent: outer.
  	aFlapTab setName: aTitle edge: anEdge color: (Color r: 0.677 g: 0.935 b: 0.484).
  	aFlapTab submorphs first beAllFont: Preferences standardEToysFont.
  	Project current world addMorphFront: aFlapTab.
  	aFlapTab adaptToWorld: Project current world.
  	aFlapTab computeEdgeFraction.
  	
  	anEdge == #left ifTrue:
  		[aFlapTab position: (outer left @ outer top).
  		outer extent: (540 @ Project current world height)].
  	anEdge == #right ifTrue:
  		[aFlapTab position: ((Project current world right - aFlapTab width) @ Project current world top).
  		outer extent: (540 @ Project current world height)].
  	
  	outer beFlap: true.
  	outer color: Color green veryMuchLighter.
  	
  	aPlug textMorph lock.
  	aFlapTab referent hide.
  	aFlapTab openFully.
  	
  	outer beSticky.
  	leftStrip beSticky.
  	rightStrip beSticky.
  	
  	Project current world doOneCycle.
  	aPlug width: 540.
  	aPlug setText: aString. "hmm, again"
  	
  	aPlug color: outer color.
  	
  	aPlug borderWidth: 0.
  	
  	aPlug textMorph contents: aString wrappedTo: 520.
  	aFlapTab applyThickness: 560.
  	aFlapTab fitOnScreen.
  	aFlapTab referent show.
  	^ aFlapTab!

Item was changed:
  ----- Method: SugarNavigatorBar>>initialize (in category 'initialization') -----
  initialize
  
  	super initialize.
  	self layoutInset: 0 at 0;
  	  hResizing: #rigid;
  	  vResizing: #rigid;
  	  cellPositioning: #topLeft.
  	self cornerStyle: #square.
  	self resistsRemoval: true.
  	self beSticky.
  	self makeGray.
+ 	self morphicLayerNumber: self class navigatorLayer.
  !

Item was removed:
- ----- Method: SugarNavigatorBar>>morphicLayerNumber (in category 'event handling') -----
- morphicLayerNumber
- 
- 	^ 100.
- !

Item was changed:
+ ----- Method: SyntaxMorph>>findA: (in category 'submorphs - accessing') -----
- ----- Method: SyntaxMorph>>findA: (in category 'submorphs-accessing') -----
  findA: aClass
  	| ans |
  	"Allow finding on the class of the parseNode"
  
  	(ans := super findA: aClass) ifNotNil: [^ ans].
  	submorphs do: [:ss | 
  		ss isSyntaxMorph ifTrue: [
  			ss parseNode class == aClass ifTrue: [^ ss]]].
  	^ nil!

Item was changed:
+ ----- Method: VeryPickyMorph>>delete (in category 'submorphs - add/remove') -----
- ----- Method: VeryPickyMorph>>delete (in category 'submorphs-add/remove') -----
  delete
  
  	passengerMorph ifNotNil: [passengerMorph delete].
  	super delete!

Item was changed:
+ ----- Method: WebCamMorph>>delete (in category 'submorphs - add/remove') -----
- ----- Method: WebCamMorph>>delete (in category 'submorphs-add/remove') -----
  delete
  	self off.
  	super delete!

Item was changed:
+ ----- Method: WireMorph>>delete (in category 'submorphs - add/remove') -----
- ----- Method: WireMorph>>delete (in category 'submorphs-add/remove') -----
  delete
  	pins do: [:p | p removeWire: self].
  	pins first isIsolated 
  		ifTrue: [pins first removeVariableAccess.
  				pins second isIsolated
  					ifTrue: [pins second removeModelVariable]]
  		ifFalse: [pins second isIsolated
  					ifTrue: [pins second removeVariableAccess]
  					ifFalse: [pins second addModelVariable]].
  	super delete!



More information about the Squeak-dev mailing list