[etoys-dev] Etoys: MorphicExtras-kfr.45.mcz

commits at source.squeak.org commits at source.squeak.org
Sat Oct 15 06:39:10 EDT 2011


Karl Ramberg uploaded a new version of MorphicExtras to project Etoys:
http://source.squeak.org/etoys/MorphicExtras-kfr.45.mcz

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

Name: MorphicExtras-kfr.45
Author: kfr
Time: 15 October 2011, 12:38:37 pm
UUID: db7889bc-50b5-4048-a659-a51f5d5b85d7
Ancestors: MorphicExtras-kfr.44

Changes to use #getvalueFromCostume: in Player. outOfWorld: and inToWorld: creates some issues where the WecCameMorph starts stepping after being moved and dropped. Not solved yet...

=============== Diff against MorphicExtras-kfr.44 ===============

Item was changed:
  ----- Method: CameraInterface class>>cameraIsAvailable (in category 'camera ops') -----
  cameraIsAvailable
  	"Answer true if at least one camera is available."
  
+ 	^(self cameraName: 1) notNil
- 	| enableCamera |
- 	enableCamera := false.
- 	^ enableCamera and: [(self cameraName: 1) notNil]
  !

Item was changed:
  ----- Method: Player>>getUseFrameSize (in category '*MorphicExtras-WebCam') -----
  getUseFrameSize
+ 	^ self getValueFromCostume: #getUseFrameSize.
- 	^ costume getUseFrameSize.
  	!

Item was changed:
  ----- Method: Player>>getWebCamIsOn (in category '*MorphicExtras-WebCam') -----
  getWebCamIsOn
+ 	^ self getValueFromCostume: #getWebCamIsOn!
- 	^ costume getWebCamIsOn!

Item was changed:
  ----- Method: Player>>getWebCamResolution (in category '*MorphicExtras-WebCam') -----
  getWebCamResolution
+ 	^ self getValueFromCostume: #getWebCamResolution!
- 	^ costume getWebCamResolution!

Item was changed:
  ----- Method: Player>>setWebCamIsOn: (in category '*MorphicExtras-WebCam') -----
  setWebCamIsOn: aBoolean
+ 	self setCostumeSlot: #setWebCamIsOn: toValue: aBoolean!
- 	costume setWebCamIsOn: aBoolean!

Item was changed:
  ----- Method: WebCamMorph>>initialize (in category 'initialization') -----
  initialize
  	super initialize.
  	camNum := 1.
  	camIsOn := false.
  	captureDelayMs := 0. "stepTime"	
  	useFrameSize := false.
  	resolution := #'medium'.
  	frameExtent := self class resolutionFor: resolution.
  	displayForm := Form extent: frameExtent depth:32.
  	self extent: frameExtent.
  	self on.
  
  	!

Item was changed:
  ----- Method: WebCamMorph>>off (in category 'accessing') -----
  off
  	CameraInterface  closeCamera: camNum.
  	camIsOn := false.
+ 	self updateDisplay.
  	self stopStepping.
+ 	
- 	self updateDisplay
  !

Item was changed:
  ----- Method: WebCamMorph>>on (in category 'accessing') -----
  on
  	
  	(CameraInterface cameraIsOpen: camNum)
+ 		ifTrue: [ ^camIsOn := true.].
- 		ifTrue: [^ false].
  	(CameraInterface
  		openCamera: camNum
  		width: frameExtent x
  		height: frameExtent y)
+ 		ifNil: ["this fails sometimes"].
- 		ifNil: [^ false].
  	(Delay forSeconds: 1) wait.
  	displayForm := Form extent: frameExtent depth:32.
  	camIsOn := true.
  	self startStepping.
+ 	!
- 	^ true!

Item was changed:
  ----- Method: WebCamMorph>>step (in category 'stepping and presenter') -----
  step
+ 	| |
+ 	self updateDisplay.
+ 	!
- 	self updateDisplay!

Item was changed:
  ----- Method: WebCamMorph>>updateDisplay (in category 'stepping and presenter') -----
  updateDisplay
+ 	camIsOn
- 	self getWebCamIsOn
  		ifFalse: [displayForm getCanvas
  				drawString: 'Camera is off'
  				at: 5 @ 2
  				font: Preferences windowTitleFont
  				color: Color white.
  			]
+ 		ifTrue:[self nextFrame].
- 	ifTrue:[self nextFrame].
       self changed.!



More information about the etoys-dev mailing list