Marcel Taeumel uploaded a new version of EToys to project The Trunk: http://source.squeak.org/trunk/EToys-mt.351.mcz
==================== Summary ====================
Name: EToys-mt.351 Author: mt Time: 22 August 2019, 3:25:41.452931 pm UUID: 9f30c9f6-6576-124f-a0d9-a71d90f238a3 Ancestors: EToys-mt.350
Complements Morphic-mt.1506 including cellInset-to-cellGap conversion.
=============== Diff against EToys-mt.350 ===============
Item was changed: ----- Method: EventRecordingSpace>>initialize (in category 'initialization') ----- initialize "Initialize the receiver to be a complete mentoring space"
super initialize.
eventRecorder := MentoringEventRecorder new. eventRecorder recordingSpace: self. self beSticky. self listDirection: #topToBottom; hResizing: #shrinkWrap; vResizing: #shrinkWrap. self extent: 1@1. self borderWidth: 2; borderColor: Color gray. self useRoundedCorners. showingSoundPanel := false.
(contentArea := Worldlet new) setNameTo: 'tutorial'; color: Color white; setProperty: #automaticPhraseExpansion toValue: true; beSticky.
self addMorphBack: contentArea.
controlsPanel := AlignmentMorph newRow. controlsPanel hResizing: #spaceFill. + controlsPanel listCentering: #center. - controlsPanel listCentering: #center. controlsPanel listSpacing: #equal. controlsPanel cellInset: 4. controlsPanel minHeight: 32. self addMorphBack: controlsPanel.
soundPanel := AlignmentMorph newRow. soundPanel hResizing: #spaceFill. + soundPanel listCentering: #center. - soundPanel listCentering: #center. soundPanel listSpacing: #equal. soundPanel cellInset: 4. soundPanel minHeight: 32. soundPanel color: (Color r: 1.0 g: 0.839 b: 0.645).
self makeStatusButtons. state := #readyToRecord. self populateControlsPanel.
"initializeFlaps will be called later, after opening in world"
!
Item was changed: ----- Method: TimesRepeatMorph>>initialize (in category 'initialization') ----- initialize "Fully initialize the receiver."
| dummyColumn timesRow timesRepeatColumn repeatRow separator repeatLabel placeHolder doLabel ephemerum | submorphs := #(). bounds := 0@0 corner: 50@40. self color: Color orange muchLighter.
self layoutPolicy: TableLayout new. self "border, and layout properties in alphabetical order..." borderColor: self color darker; borderWidth: 2; - cellSpacing: #none; cellPositioning: #topLeft; hResizing: #spaceFill; layoutInset: 0; listDirection: #leftToRight; rubberBandCells: true; vResizing: #shrinkWrap; wrapCentering: #none.
self setNameTo: 'Repeat Complex'.
dummyColumn := AlignmentMorph newColumn. dummyColumn cellInset: 0; layoutInset: 0. dummyColumn width: 0. dummyColumn cellPositioning: #leftCenter. dummyColumn hResizing: #shrinkWrap; vResizing: #spaceFill. self addMorph: dummyColumn.
timesRepeatColumn := AlignmentMorph newColumn. timesRepeatColumn setNameTo: 'Times Repeat'.
timesRepeatColumn cellPositioning: #topLeft. timesRepeatColumn hResizing: #spaceFill. timesRepeatColumn vResizing: #shrinkWrap. timesRepeatColumn layoutInset: 0. timesRepeatColumn borderWidth: 0. timesRepeatColumn color: Color orange muchLighter.
timesRow := AlignmentMorph newRow color: color; layoutInset: 0. timesRow minCellSize: (2@16). timesRow setNameTo: 'Times'. repeatLabel := StringMorph contents: 'Repeat' translated font: Preferences standardEToysFont. timesRow addMorphBack: repeatLabel. timesRow vResizing: #shrinkWrap. timesRow addMorphBack: (Morph new color: color; extent: 6@5). "spacer"
numberOfTimesToRepeatPart := TilePadMorph new setType: #Number. numberOfTimesToRepeatPart hResizing: #shrinkWrap; color: Color transparent. numberOfTimesToRepeatPart addMorphBack: (TileMorph new addArrows; setLiteral: 2). numberOfTimesToRepeatPart borderWidth: 0; layoutInset: (1@0).
timesRow addMorphBack: numberOfTimesToRepeatPart. timesRow addMorphBack: (StringMorph contents: ' times ' font: Preferences standardEToysFont). timesRow addMorphBack: AlignmentMorph newVariableTransparentSpacer. timesRepeatColumn addMorphBack: timesRow.
separator := AlignmentMorph newRow color: Color transparent. separator vResizing: #rigid; hResizing: #spaceFill; height: 2. separator borderWidth: 0. timesRepeatColumn addMorphBack: separator.
repeatRow := AlignmentMorph newRow color: color; layoutInset: 0. repeatRow minCellSize: (2@16). repeatRow setNameTo: 'Repeat '. placeHolder := Morph new. placeHolder beTransparent; extent: (8@0). repeatRow addMorphBack: placeHolder. repeatRow vResizing: #shrinkWrap. doLabel := StringMorph contents: 'Do' font: Preferences standardEToysFont. repeatRow addMorphBack: doLabel. repeatRow addMorphBack: (Morph new color: color; extent: 5@5). "spacer" repeatRow addMorphBack: (whatToRepeatPart := ScriptEditorMorph new borderWidth: 0; layoutInset: 0).
whatToRepeatPart hResizing: #spaceFill. whatToRepeatPart vResizing: #shrinkWrap. whatToRepeatPart color: Color transparent. whatToRepeatPart setNameTo: 'Script to repeat'. whatToRepeatPart addMorphBack: (ephemerum := Morph new height: 14) beTransparent.
timesRepeatColumn addMorphBack: repeatRow. self addMorphBack: timesRepeatColumn. self bounds: self fullBounds.
ephemerum delete!
Item was changed: ----- Method: TimesRepeatTile>>initialize (in category 'initialization') ----- initialize "Fully initialize the receiver."
| dummyColumn timesRepeatColumn repeatRow separator placeHolder doLabel ephemerum | submorphs := #(). bounds := 0@0 corner: 50@40. self color: Color orange muchLighter.
self layoutPolicy: TableLayout new. self "border, and layout properties in alphabetical order..." borderColor: self color darker; + borderWidth: 2; - borderWidth: 2; - cellSpacing: #none; cellPositioning: #topLeft; hResizing: #spaceFill; layoutInset: 0; listDirection: #leftToRight; rubberBandCells: true; vResizing: #shrinkWrap; wrapCentering: #none.
self setNameTo: 'Repeat Complex'.
dummyColumn := AlignmentMorph newColumn. dummyColumn cellInset: 0; layoutInset: 0. dummyColumn width: 0. dummyColumn cellPositioning: #leftCenter. dummyColumn hResizing: #shrinkWrap; vResizing: #spaceFill. self addMorph: dummyColumn.
timesRepeatColumn := AlignmentMorph newColumn. timesRepeatColumn setNameTo: 'Times Repeat'.
timesRepeatColumn cellPositioning: #topLeft. timesRepeatColumn hResizing: #spaceFill. timesRepeatColumn vResizing: #shrinkWrap. timesRepeatColumn layoutInset: 0. timesRepeatColumn borderWidth: 0. timesRepeatColumn color: Color orange muchLighter.
timesRow := TimesRow newRow color: color; layoutInset: 0. timesRepeatColumn addMorphBack: timesRow.
separator := AlignmentMorph newRow color: Color transparent. separator vResizing: #rigid; hResizing: #spaceFill; height: 2. separator borderWidth: 0. timesRepeatColumn addMorphBack: separator.
repeatRow := AlignmentMorph newRow color: color; layoutInset: 0. repeatRow minCellSize: (2@16). repeatRow setNameTo: 'Repeat '. placeHolder := Morph new. placeHolder beTransparent; extent: (8@0). repeatRow addMorphBack: placeHolder. repeatRow vResizing: #shrinkWrap. doLabel := StringMorph contents: 'Do' translated font: Preferences standardEToysFont. repeatRow addMorphBack: doLabel. repeatRow addMorphBack: (Morph new color: color; extent: 5@5). "spacer" repeatRow addMorphBack: (whatToRepeatPart := ScriptEditorMorph new borderWidth: 0; layoutInset: 0).
whatToRepeatPart hResizing: #spaceFill; vResizing: #shrinkWrap; color: (Color transparent); height: (Preferences standardEToysFont height); minHeight: (Preferences standardEToysFont height); setNameTo: ('Script to repeat' translated); addMorphBack: ((ephemerum := Morph new height: 14) beTransparent).
timesRepeatColumn addMorphBack: repeatRow. self addMorphBack: timesRepeatColumn. self bounds: self fullBounds.
ephemerum delete!
packages@lists.squeakfoundation.org