Karl Ramberg uploaded a new version of Etoys to project Etoys: http://source.squeak.org/etoys/Etoys-kfr.6.mcz
==================== Summary ====================
Name: Etoys-kfr.6 Author: kfr Time: 13 May 2010, 5:30:10 pm UUID: 474dee1a-9fde-9f49-99e1-c4f3c18bc308 Ancestors: Etoys-kfr.5
Removes unused class TimesRepeatMorph (is duplicate of TimesRepeatTile)
=============== Diff against Etoys-kfr.5 ===============
Item was removed: - ----- Method: TimesRepeatMorph>>storeCodeOn:indent: (in category 'code generation') ----- - storeCodeOn: aStream indent: tabCount - "Store code representing the receiver on the stream, obeying the tab state." - - aStream nextPutAll: '(('. - numberOfTimesToRepeatPart submorphs - ifEmpty: - [aStream nextPutAll: '0'] - ifNotEmpty: - [numberOfTimesToRepeatPart storeCodeOn: aStream indent: tabCount + 2]. - aStream nextPutAll: ' ) asInteger max: 0) timesRepeat:'. - tabCount + 1 timesRepeat: [aStream tab]. - aStream nextPutAll: '['; cr. - self storeCodeBlockFor: whatToRepeatPart on: aStream indent: tabCount + 2. - aStream nextPut: $]. - !
Item was removed: - ----- Method: TimesRepeatMorph>>sexpWith: (in category 'code generation') ----- - sexpWith: dictionary - - | n elements e | - n _ SExpElement keyword: #loop. - n attributeAt: #type put: 'repeat'. - elements _ WriteStream on: (Array new: 3). - e _ SExpElement keyword: #initial. - e elements: (Array with: ((SExpElement keyword: #literal) attributeAt: #value put: '1'; yourself)). - elements nextPut: e. - e _ SExpElement keyword: #increment. - e elements: (Array with: ((SExpElement keyword: #literal) attributeAt: #value put: '1'; yourself)). - elements nextPut: e. - - e _ SExpElement keyword: #test. - numberOfTimesToRepeatPart submorphs - ifEmpty: - [e elements: (Array with: ((SExpElement keyword: #literal) attributeAt: #value put: '0'; yourself))] - ifNotEmpty: - [e elements: (Array with: (numberOfTimesToRepeatPart sexpWith: dictionary))]. - - elements nextPut: e. - - elements nextPut: (self sexpBlockFor: whatToRepeatPart with: dictionary). - n elements: elements contents. - ^ n. - - !
Item was removed: - ----- Method: TimesRepeatMorph>>parseNodeWith: (in category 'code generation') ----- - parseNodeWith: encoder - - | rec selector arg | - rec _ numberOfTimesToRepeatPart submorphs - ifEmpty: - [encoder encodeLiteral: 0] - ifNotEmpty: - [numberOfTimesToRepeatPart parseNodeWith: encoder]. - selector _ #timesRepeat:. - arg _ self blockNode: whatToRepeatPart with: encoder. - ^ MessageNode new - receiver: rec - selector: selector - arguments: (Array with: arg) - precedence: (selector precedence) - from: encoder - sourceRange: nil. - !
Item was removed: - CompoundTileMorph subclass: #TimesRepeatMorph - instanceVariableNames: 'numberOfTimesToRepeatPart whatToRepeatPart' - classVariableNames: '' - poolDictionaries: '' - category: 'Etoys-Scripting Tiles'! - - !TimesRepeatMorph commentStamp: 'sw 1/11/2006 22:05' prior: 0! - A variant on the CompoundTileMorph that allows a section of code to be executed as many times as a numeric-control-field indicates. For reasons of sharing and history, the CompoundTileMorph continues to be the one for test/yes/no, and this subclass disregards those three areas and adds two of its own.!
Item was removed: - ----- Method: TimesRepeatMorph>>targetPartFor: (in category 'initialization') ----- - targetPartFor: aMorph - "Return the row into which the given morph should be inserted." - - | centerY | - centerY _ aMorph fullBounds center y. - {numberOfTimesToRepeatPart, whatToRepeatPart} do: [:m | - (centerY <= m bounds bottom) ifTrue: [^ m]]. - ^ noPart - !
Item was removed: - ----- Method: TimesRepeatMorph>>initialize (in category 'initialization') ----- - initialize - "Fully initialize the receiver." - - | dummyColumn timesRow timesRepeatColumn repeatRow separator repeatLabel placeHolder doLabel ephemerum | - submorphs _ EmptyArray. - 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 removed: - ----- Method: TimesRepeatMorph>>labelMorphs (in category 'access') ----- - labelMorphs - - | w | - w := WriteStream on: (Array new: 3). - w nextPut: self submorphs second submorphs first submorphs first. - w nextPut: self submorphs second submorphs first submorphs fourth. - w nextPut: self submorphs second submorphs third submorphs second. - ^ w contents. - !