[etoys-dev] Etoys Inbox: DrGeoII-Core-HilaireFernandes.16.mcz

commits at source.squeak.org commits at source.squeak.org
Sat Jun 19 14:26:45 EDT 2010


A new version of DrGeoII-Core was added to project Etoys Inbox:
http://source.squeak.org/etoysinbox/DrGeoII-Core-HilaireFernandes.16.mcz

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

Name: DrGeoII-Core-HilaireFernandes.16
Author: HilaireFernandes
Time: 19 June 2010, 6:04:26 pm
UUID: 9d8afd5f-0432-4e39-b2ff-8414261fcde4
Ancestors: DrGeoII-Core-HilaireFernandes.15

Line clipping fix.
DrGeoCanvas fix

=============== Diff against DrGeoII-Core-HilaireFernandes.15 ===============

Item was changed:
  ----- Method: DrGeoCanvas>>initialize (in category 'initialize-release') -----
  initialize
  	super initialize.
  	drgeo := DrGeo service.
+ 	drgeo view extent: 400 at 300.
+ 	drgeo view openInWorld!
- 	drgeo view area extent: 400 at 300.
- 	drgeo view area openInWorld!

Item was changed:
  ----- Method: DrGBuildTool>>reset (in category 'updating') -----
  reset
  	super reset.
  	self stopBlinking.
+ 	self builder reset.
+ 	selectedCostumes := OrderedCollection new!
- 	self builder reset!

Item was changed:
  ----- Method: Rectangle>>intersectionWith: (in category '*DrGeoII-Core-intersection') -----
  intersectionWith: aLineSeg 
  	| intersections |
  	intersections := Set new.
  	(aLineSeg
  		intersectionWith: (LineSegment from: self origin to: self bottomLeft))
  		ifNotNilDo: [:inter | intersections add: inter].
  	(aLineSeg
  		intersectionWith: (LineSegment from: self origin to: self topRight))
  		ifNotNilDo: [:inter | intersections add: inter].
  	(aLineSeg
  		intersectionWith: (LineSegment from: self corner to: self bottomLeft))
  		ifNotNilDo: [:inter | intersections add: inter].
  	(aLineSeg
  		intersectionWith: (LineSegment from: self corner to: self topRight))
  		ifNotNilDo: [:inter | intersections add: inter].
  		intersections := intersections asOrderedCollection.
  	intersections size = 2
  		ifTrue: [^ LineSegment from: intersections first to: intersections second].
  	intersections size = 0 
  		ifTrue: 
  			[(self containsPoint: aLineSeg start) 
  				ifTrue: [(self containsPoint: aLineSeg end) ifTrue: [^aLineSeg ]]
  				ifFalse: [(self containsPoint: aLineSeg end) ifFalse: [^nil]]].
  
  	(self containsPoint: aLineSeg start) 
+ 		ifTrue: [
+ 			(self containsPoint: aLineSeg start) 
+ 				ifTrue: [^aLineSeg]
+ 				ifFalse: [^LineSegment from: aLineSeg start to: intersections first]].
- 		ifTrue: [^LineSegment from: aLineSeg start to: intersections first].
  	(self containsPoint: aLineSeg end) 
  		ifTrue: [^LineSegment from: aLineSeg end to: intersections first].
  	^nil!

Item was changed:
  ----- Method: DrGParallelBuilder>>isWanted: (in category 'testing') -----
  isWanted: aMathItemCollection
  	aMathItemCollection ifEmpty: [^false].
+ 	^ (aMathItemCollection first isPointItem and: [pointA isNil])
+ 		or: [aMathItemCollection first isDirectionItem and: [direction isNil]] 
- 	^ (aMathItemCollection first isPointItem 
- 			and: [aMathItemCollection first  ~= pointA])
- 		or: [aMathItemCollection first isDirectionItem
- 				and: [aMathItemCollection first ~= direction]] 
  !

Item was changed:
  ----- Method: DrGeoDomain>>addModelItemsToWindowMenu: (in category 'user interface') -----
  addModelItemsToWindowMenu: aMenu 
  	aMenu addLine.
  	aMenu
  		add: 'About Dr. Geo II...'
  		target: self
  		selector: #inform:
+ 		argument: 'Copyright 1996-2010 Hilaire Fernandes'!
- 		argument: 'Copyright 1996-2009 Hilaire Fernandes'!

Item was changed:
  ----- Method: DrGSegmentMorph>>from:to: (in category 'accessing') -----
  from: startPoint to: endPoint 
  	| clippedSeg |
  	clippedSeg := self costume drawable bounds
  				intersectionWith: (LineSegment from: startPoint to: endPoint).
  	clippedSeg
  		ifNotNil: [
  			self visible ifFalse: [ self show].
  			vertices at: 1 put: clippedSeg start asIntegerPoint.
  			vertices at: 2 put: clippedSeg end asIntegerPoint.
  			self computeBounds]
  		ifNil: [self visible ifTrue: [self hide]]!

Item was added:
+ ----- Method: DrGService classSide>>descriptionForPartsBin (in category 'parts bin') -----
+ descriptionForPartsBin
+ 	^ (DescriptionForPartsBin
+ 		formalName: 'Dr. Geo'
+ 		categoryList: #('Graphics' 'Tools' )
+ 		documentation: 'An interactive geometry canvas to draw dynamic geometric sketch. Open the Morph menu to get access to the construction tools and more.' translated
+ 		globalReceiverSymbol: #DrGeo
+ 		nativitySelector: #sample)
+ 		sampleImageForm: DrGIcons angle!

Item was removed:
- ----- Method: DrGeoDomain>>updateDirtyMathItems (in category 'deprecated') -----
- updateDirtyMathItems
- 	factory updateDirtyMathItems.
- 	self triggerEvent: #updatedDirtyItems!



More information about the etoys-dev mailing list