[squeak-dev] The Trunk: MorphicExtras-mt.314.mcz

commits at source.squeak.org commits at source.squeak.org
Wed May 4 10:07:28 UTC 2022


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

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

Name: MorphicExtras-mt.314
Author: mt
Time: 4 May 2022, 12:07:19.435048 pm
UUID: 21980273-a7ba-0749-b4a9-e7b5c65b79d2
Ancestors: MorphicExtras-tpr.313

Complements Morphic-mt.1982.

=============== Diff against MorphicExtras-tpr.313 ===============

Item was removed:
- ImageMorph subclass: #AnimatedImageMorph
- 	instanceVariableNames: 'images delays stepTime nextTime imageIndex'
- 	classVariableNames: ''
- 	poolDictionaries: ''
- 	category: 'MorphicExtras-AdditionalMorphs'!
- 
- !AnimatedImageMorph commentStamp: '<historical>' prior: 0!
- I am an ImageMorph that can hold more than one image. Each image has its own delay time.!

Item was removed:
- ----- Method: AnimatedImageMorph class>>fileReaderServicesForFile:suffix: (in category 'fileIn/Out') -----
- fileReaderServicesForFile: fullName suffix: suffix
- 
- 	^((AnimatedGIFReadWriter typicalFileExtensions asSet
- 		add: '*'; add: 'form'; yourself)
- 		includes: suffix)
- 		ifTrue: [ self services ]
- 		ifFalse: [#()]
- !

Item was removed:
- ----- Method: AnimatedImageMorph class>>fromGIFFileNamed: (in category 'instance creation') -----
- fromGIFFileNamed: fileName
- 	| reader |
- 	reader := AnimatedGIFReadWriter formsFromFileNamed: fileName.
- 	^reader forms size = 1
- 		ifTrue: [ ImageMorph new image: reader forms first ]
- 		ifFalse: [ self new fromReader: reader ]!

Item was removed:
- ----- Method: AnimatedImageMorph class>>fromStream: (in category 'instance creation') -----
- fromStream: aStream
- 	| reader |
- 	reader := AnimatedGIFReadWriter formsFromStream: aStream.
- 	^reader forms size = 1
- 		ifTrue: [ ImageMorph new image: reader forms first ]
- 		ifFalse: [ self new fromReader: reader ]!

Item was removed:
- ----- Method: AnimatedImageMorph class>>initialize (in category 'class initialization') -----
- initialize
- 	"register the receiver in the global registries"
- 	self environment
- 		at: #FileServices
- 		ifPresent: [:cl | cl registerFileReader: self]!

Item was removed:
- ----- Method: AnimatedImageMorph class>>openGIFInWindow: (in category 'instance creation') -----
- openGIFInWindow: aStream
- 	^(self fromStream: aStream binary) openInWorld!

Item was removed:
- ----- Method: AnimatedImageMorph class>>serviceOpenGIFInWindow (in category 'fileIn/Out') -----
- serviceOpenGIFInWindow
- 	"Answer a service for opening a gif graphic in a window"
- 	^ (SimpleServiceEntry
- 		provider: self
- 		label: 'open the graphic as a morph'
- 		selector: #openGIFInWindow:
- 		description: 'open a GIF graphic file as a morph'
- 		buttonLabel: 'open')
- 		argumentGetter: [:fileList | fileList readOnlyStream]!

Item was removed:
- ----- Method: AnimatedImageMorph class>>services (in category 'fileIn/Out') -----
- services
- 	^ Array
- 		with: self serviceOpenGIFInWindow
- 		"with: Form serviceImageImports"
- 		with: Form serviceImageAsBackground!

Item was removed:
- ----- Method: AnimatedImageMorph class>>unload (in category 'class initialization') -----
- unload
- 	"Unload the receiver from global registries"
- 	self environment
- 		at: #FileServices
- 		ifPresent: [:cl | cl unregisterFileReader: self]!

Item was removed:
- ----- Method: AnimatedImageMorph>>delays (in category 'accessing') -----
- delays
- 
- 	^ delays!

Item was removed:
- ----- Method: AnimatedImageMorph>>fromGIFFileNamed: (in category 'private') -----
- fromGIFFileNamed: fileName
- 	self fromReader: (AnimatedGIFReadWriter formsFromFileNamed: fileName)!

Item was removed:
- ----- Method: AnimatedImageMorph>>fromImages: (in category 'private') -----
- fromImages: anArray 
- 
- 	images := anArray.
- 	self setUniformDelay: 10.
- 	self isOpaque: true.
- 	self reset.!

Item was removed:
- ----- Method: AnimatedImageMorph>>fromImages:delay: (in category 'private') -----
- fromImages: anArray delay: anInteger
- 
- 	images := anArray.
- 	self setUniformDelay: anInteger.
- 	self isOpaque: true.
- 	self reset.!

Item was removed:
- ----- Method: AnimatedImageMorph>>fromReader: (in category 'private') -----
- fromReader: reader
- 	images := reader forms.
- 	delays := reader delays.
- 	(images anySatisfy:[:each|(each colors includes: Color transparent)])  ifTrue:[self isOpaque: true].
- 	self reset.!

Item was removed:
- ----- Method: AnimatedImageMorph>>fromStream: (in category 'private') -----
- fromStream: aStream
- 	self fromReader: (AnimatedGIFReadWriter formsFromStream: aStream)!

Item was removed:
- ----- Method: AnimatedImageMorph>>images (in category 'accessing') -----
- images
- 	^images!

Item was removed:
- ----- Method: AnimatedImageMorph>>initialize (in category 'private') -----
- initialize
- 	nextTime := Time millisecondClockValue.
- 	imageIndex := 1.
- 	stepTime := 10.
- 	super initialize!

Item was removed:
- ----- Method: AnimatedImageMorph>>reset (in category 'private') -----
- reset
- 
- 	imageIndex := 0.
- 	self image: (Form extent: images first extent depth: 32).
- 	self step.!

Item was removed:
- ----- Method: AnimatedImageMorph>>setUniformDelay: (in category 'private') -----
- setUniformDelay: anInteger
-       "set delay to a uniform value for all images"
- 	delays := Array new: images size withAll: anInteger.!

Item was removed:
- ----- Method: AnimatedImageMorph>>step (in category 'stepping and presenter') -----
- step
- 	| d form |
- 	images isEmpty ifTrue: [^ self].
- 		
- 	nextTime > Time millisecondClockValue
- 		ifTrue: [^self].
- "	self changed."
- 	imageIndex > 0 ifTrue: [
- 		form := images at: imageIndex.
- 		form displayOn: self image at: 0 at 0 rule: (self isOpaque ifTrue: [Form paint] ifFalse: [Form erase])].
- 	form := images at: (imageIndex := imageIndex \\ images size + 1).
- 	form displayOn: self image at: 0 at 0 rule: Form paint.
- 	self changed. 
- 	d := (delays at: imageIndex) ifNil: [0].
- 	nextTime := Time millisecondClockValue + d
- !

Item was removed:
- ----- Method: AnimatedImageMorph>>stepTime (in category 'stepping and presenter') -----
- stepTime
- 	^stepTime ifNil: [super stepTime]!

Item was removed:
- ----- Method: AnimatedImageMorph>>stepTime: (in category 'stepping and presenter') -----
- stepTime: anInteger
- 	stepTime := anInteger!

Item was removed:
- ----- Method: AnimatedImageMorph>>wantsSteps (in category 'stepping and presenter') -----
- wantsSteps
- 	^(images size > 1)
- !



More information about the Squeak-dev mailing list